Arx Libertatis Bug Tracker
star_faded.png
Please log in to bookmark issues
feature_request_small.png
CLOSED  Feature request #76  -  Add a Win32 crash handler
Posted Sep 15, 2011 - updated Mar 15, 2012   Shortlink: http://arx.vg/76
action_vote_minus_faded.png
0
Votes
action_vote_plus_faded.png
icon_info.png This issue has been closed with status "Done" and resolution "RESOLVED".
Issue details
  • Type of issue
    Feature request
  • Status
     
    Done
  • Assigned to
    Not assigned to anyone
  • Progress
       
  • Type of bug
    Not triaged
  • Likelihood
    Not triaged
  • Effect
    Not triaged
  • Posted by
     SebastienLussier
  • Owned by
    Not owned by anyone
  • Estimated time
    Not estimated
  • Time spent
    369918 hours
  • Category
    Not determined
  • Resolution
    RESOLVED
  • Priority
    Not determined
  • Severity
    Normal
  • Targetted for
    icon_milestones.png Not determined
  • OS
    icon_customdatatype.png Not determined
  • Architecture
    icon_customdatatype.png Not determined
  • Fixed in
    icon_customdatatype.png Not determined
Issue description
Should generate a crash dump that can be opened in visual studio. And we should store the pdb files for the official releases somewhere...

#1
icon_reply.pngReply
Comment posted by
 Daniel Scharrer
Sep 15, 03:06
Should we always generate crash dumps or only for debug builds? How large can these get? If they are more than a few megabytes also generating a stack trace could be helpful.

We could also enable core dumps for linux builds.
#2
icon_reply.pngReply
Comment posted by
 SebastienLussier
Sep 16, 14:12
There's a few options for crash dump (like full heap, minimal dump... etc) I don't think full heap would be really worth it. I'll do some test when i'll work on this.
#3
icon_reply.pngReply
Comment posted by
 SebastienLussier
Sep 30, 03:34
Hi dscharrer!

Take a look at an experiment I did with CrashRpt, a really nice library for crash reporting under Windows. Log into gmail with this account:

username: arxlibertatis.crashes@gmail.com password: sent to your inbox

Ideally it would be best to avoid going the email direction. It requires the user to have a configured email client on his desktop, and people are mostly using web based mail now I guess. Plus, it seems to fail with the latest Outlook since MS removed SMAPI support...

The best would be to push the error report to some server (using http). But we don't have that available smileys/4.png

There's also google-breakpad, that offers a multiplatform solution, but it's a bit less suited for Windows and VC++ than CrashRpt is.

The best would be to have something integrated with ... smileys/2.png
#4
icon_reply.pngReply
Comment posted by
 Daniel Scharrer
Feb 10, 02:50
TODO:
  • cleanup old crash reports so they don't clutter up the user dir
  • respect the aspect ratio of the screenshot in the report content tab
#5
icon_reply.pngReply
Comment posted by
 SebastienLussier
Feb 13, 02:27
Also
  • Allow the user to exclude individual files from the crash report
  • Crop or remove screenshot under linux - Feature removed
  • Look for arxcrashreporter in the application paths
#9
icon_reply.pngReply
Comment posted by
 Daniel Scharrer
Feb 18, 00:57
Also
  • in case arxcrashreporter doesn't exist / couldn't start, start fallback in-process crash handler and dump everything to file
  • wrong / missing system information under linux: process name, path, architecture, running time, os name (uname -a)
  • remove gdb output when starting arx
  • fix compiler errors and warnings
    • boost 1.41 support
#23
icon_reply.pngReply
Comment posted by
 SebastienLussier
Mar 08, 01:15
Hello dscharrer: Regarding boost 1.41 support, i think you've fixed this already, right ?
#24
icon_reply.pngReply
Comment posted by
 Daniel Scharrer
Mar 08, 01:20
Yes, we even have Boost 1.39 support (but not 1.37) The only warnings in that build are minor style warnings in qhexedit.
#25
icon_reply.pngReply
Comment posted by
 Daniel Scharrer
Mar 08, 01:23
Also, there are compile errors when neither the Win 32 or POSIX crash handler is available - see the mingw32 builds. The mingw32 builds aren't important, but compiling without a crash handler might help for other exotic systems.
#30
icon_reply.pngReply
Comment posted by
 SebastienLussier
Mar 14, 04:14
I think we can say that this task is finally done smileys/2.png

What's left
  • Final test on linux
  • Trigger a build to check for new warnings/errors
  • Mergefest
  • ???
  • Profit


smileys/2.png