Index: content/browser/browser_child_process_host_impl.cc |
=================================================================== |
--- content/browser/browser_child_process_host_impl.cc (revision 270662) |
+++ content/browser/browser_child_process_host_impl.cc (working copy) |
@@ -219,6 +219,12 @@ |
BrowserChildProcessInstanceCreated(data)); |
} |
+void BrowserChildProcessHostImpl::HistogramBadMessageTerminated( |
+ int process_type) { |
+ UMA_HISTOGRAM_ENUMERATION("ChildProcess.BadMessgeTerminated", process_type, |
+ PROCESS_TYPE_MAX); |
+} |
+ |
base::TerminationStatus BrowserChildProcessHostImpl::GetTerminationStatus( |
bool known_dead, int* exit_code) { |
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO)); |
@@ -252,6 +258,12 @@ |
delegate_->OnChannelError(); |
} |
+void BrowserChildProcessHostImpl::OnBadMessageReceived( |
+ const IPC::Message& message) { |
+ HistogramBadMessageTerminated(data_.process_type); |
+ base::KillProcess(GetHandle(), RESULT_CODE_KILLED_BAD_MESSAGE, false); |
+} |
+ |
bool BrowserChildProcessHostImpl::CanShutdown() { |
return delegate_->CanShutdown(); |
} |