Fixed passing of exception to the system crash handler

This commit is contained in:
Ales Pergl 2018-03-09 15:44:37 +01:00
parent f685e389d3
commit 4673c67835

View file

@ -209,7 +209,10 @@ void CrashReporterWin::SetUploadParameters() {
int CrashReporterWin::CrashForException(EXCEPTION_POINTERS* info) { int CrashReporterWin::CrashForException(EXCEPTION_POINTERS* info) {
if (breakpad_) { if (breakpad_) {
breakpad_->WriteMinidumpForException(info); breakpad_->WriteMinidumpForException(info);
if (skip_system_crash_handler_)
TerminateProcessWithoutDump(); TerminateProcessWithoutDump();
else
RaiseFailFastException(info->ExceptionRecord, info->ContextRecord, 0);
} }
return EXCEPTION_CONTINUE_SEARCH; return EXCEPTION_CONTINUE_SEARCH;
} }
@ -229,7 +232,7 @@ bool CrashReporterWin::MinidumpCallback(const wchar_t* dump_path,
MDRawAssertionInfo* assertion, MDRawAssertionInfo* assertion,
bool succeeded) { bool succeeded) {
CrashReporterWin* self = static_cast<CrashReporterWin*>(context); CrashReporterWin* self = static_cast<CrashReporterWin*>(context);
if (succeeded && !self->skip_system_crash_handler_) if (succeeded && self->skip_system_crash_handler_)
return true; return true;
else else
return false; return false;