summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormark@chromium.org <mark@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-05-12 03:18:50 +0000
committermark@chromium.org <mark@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-05-12 03:18:50 +0000
commit7344c80bf52884bb335e903b17e98dc31cef51d7 (patch)
tree0e4840cd9dfde93b4778445e87b258b3040086de
parent146ffbb0e22fca721e5792d32d78d7fe10bbbc5a (diff)
downloadchromium_src-7344c80bf52884bb335e903b17e98dc31cef51d7.zip
chromium_src-7344c80bf52884bb335e903b17e98dc31cef51d7.tar.gz
chromium_src-7344c80bf52884bb335e903b17e98dc31cef51d7.tar.bz2
Merge trunk r84979 to the 742 branch (M12)
Treat TERMINATION_STATUS_ABNORMAL_TERMINATION in browser child processes as crashes. Child processes on the Mac that are Breakpad-enabled will not appear to have crashed according to the logic in base::GetTerminationStatus, they'll show up as TERMINATION_STATUS_ABNORMAL_TERMINATION instead of TERMINATION_STATUS_PROCESS_CRASHED. This happens because they exit from their crash handler to suppress the system's redundant crash handler. This broke in r69082, which introduced the TerminationStatus enum to replace a simpler did_crash boolean value set by logic treating both death by signal and nonzero exit status as a crash. BUG=82172 TEST=Mac plugin crash count Review URL: http://codereview.chromium.org/7002032 Review URL: http://codereview.chromium.org/7012008 git-svn-id: svn://svn.chromium.org/chrome/branches/742/src@85097 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--content/browser/browser_child_process_host.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/content/browser/browser_child_process_host.cc b/content/browser/browser_child_process_host.cc
index 43759e1..a38ee93 100644
--- a/content/browser/browser_child_process_host.cc
+++ b/content/browser/browser_child_process_host.cc
@@ -143,7 +143,8 @@ void BrowserChildProcessHost::OnChildDied() {
int exit_code;
base::TerminationStatus status = GetChildTerminationStatus(&exit_code);
switch (status) {
- case base::TERMINATION_STATUS_PROCESS_CRASHED: {
+ case base::TERMINATION_STATUS_PROCESS_CRASHED:
+ case base::TERMINATION_STATUS_ABNORMAL_TERMINATION: {
OnProcessCrashed(exit_code);
// Report that this child process crashed.