Unhook current Breakpad object after handling uncaught NSException.

After handling an uncaught NSException, release the Breakpad object
so there will not be a second crash dump logged.

Prior to this change, for every uncaught NSException handled through
the Breakpad::UncaughtExceptionHandler(), a second crash without
any useful information (generally __cxa_rethrow and std::__terminate)
is recorded.

R=qsr@chromium.org

Review URL: https://breakpad.appspot.com/9664002

Patch from Peter Lee <pkl@chromium.org>.

git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1344 4c0a9323-5329-0410-9bdc-e9ce6186880e
This commit is contained in:
qsr@chromium.org 2014-07-07 08:13:23 +00:00
parent 501673c86b
commit f88336d4a1

View File

@ -258,6 +258,7 @@ void Breakpad::UncaughtExceptionHandler(NSException *exception) {
if (current_breakpad_) {
current_breakpad_->HandleUncaughtException(exception);
}
BreakpadRelease(current_breakpad_);
}
//=============================================================================