[Presentation API, Android] Implement basic messaging
[chromium-blink-merge.git] / chrome / browser / bad_message.cc
blobe64aa103ac1695c6b2b5da598638dfe3b6ff878b
1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "chrome/browser/bad_message.h"
7 #include "base/logging.h"
8 #include "base/metrics/sparse_histogram.h"
9 #include "content/public/browser/browser_message_filter.h"
10 #include "content/public/browser/render_process_host.h"
12 namespace bad_message {
14 namespace {
16 void LogBadMessage(BadMessageReason reason) {
17 LOG(ERROR) << "Terminating renderer for bad IPC message, reason " << reason;
18 UMA_HISTOGRAM_SPARSE_SLOWLY("Stability.BadMessageTerminated.Chrome", reason);
21 } // namespace
23 void ReceivedBadMessage(content::RenderProcessHost* host,
24 BadMessageReason reason) {
25 LogBadMessage(reason);
26 host->ShutdownForBadMessage();
29 void ReceivedBadMessage(content::BrowserMessageFilter* filter,
30 BadMessageReason reason) {
31 LogBadMessage(reason);
32 filter->ShutdownForBadMessage();
35 } // namespace bad_message