Glenn Maynard 607a8e2e11 I've been hesitant to do this, but it's the next step in
making crash handling more consistent.  Move the crash
handling dialog into a new process, like the Unix handler
does.

 - We're allowed to operate normally; we have a new heap,
so allocations are safe.
 - Gzipping the VDI is easy now; we can simply use GunzipFile().

The only particularly ugly thing in this is the need to run
CrashGetModuleBaseName in the original process.  That's lame,
but straightforward.  It'd be better to use GetModuleFileNameEx,
but I didn't want to drag psapi.dll into this.

This may also make window hiding more reliable.  Previously,
we wrote the crashinfo, tried to hide the window, then showed
the dialog.  Hiding the window was risky and could hang or
crash again.  Now we can forcibly kill the process from the
child, if needed, and still be able to show a dialog.

This also removes the backtrace and "reason" displays from the
dialog.  Those weren't useful in practice; I always loaded the
crashinfo.txt and never used them, and they're intimidating to
casual users.
2006-02-09 23:11:31 +00:00
S
Description
554 MiB
Languages
C++ 85.7%
Lua 4.3%
C 4.3%
Rich Text Format 2.3%
CMake 1.1%
Other 2%