Index: content/browser/bad_message.cc |
diff --git a/content/browser/bad_message.cc b/content/browser/bad_message.cc |
index cc41b00bd82fce643d63931134ee855ccb0a1e42..975aab1441ce15eb14130b0d0a9eb6ff23a56f71 100644 |
--- a/content/browser/bad_message.cc |
+++ b/content/browser/bad_message.cc |
@@ -6,17 +6,31 @@ |
#include "base/logging.h" |
#include "base/metrics/histogram_macros.h" |
+#include "content/public/browser/browser_message_filter.h" |
#include "content/public/browser/render_process_host.h" |
namespace content { |
namespace bad_message { |
-void ReceivedBadMessage(RenderProcessHost* host, BadMessageReason reason) { |
+namespace { |
+ |
+void LogBadMessage(BadMessageReason reason) { |
LOG(ERROR) << "Terminating renderer for bad IPC message, reason " << reason; |
UMA_HISTOGRAM_ENUMERATION("Stability.BadMessageTerminated.Content", reason, |
BAD_MESSAGE_MAX); |
+} |
+ |
+} // namespace |
+ |
+void ReceivedBadMessage(RenderProcessHost* host, BadMessageReason reason) { |
+ LogBadMessage(reason); |
host->ShutdownForBadMessage(); |
} |
+void ReceivedBadMessage(BrowserMessageFilter* filter, BadMessageReason reason) { |
+ LogBadMessage(reason); |
+ filter->ShutdownForBadMessage(); |
+} |
+ |
} // namespace bad_message |
} // namespace content |