Index: chrome/browser/renderer_host/render_view_host.cc |
=================================================================== |
--- chrome/browser/renderer_host/render_view_host.cc (revision 70108) |
+++ chrome/browser/renderer_host/render_view_host.cc (working copy) |
@@ -738,7 +738,7 @@ |
/////////////////////////////////////////////////////////////////////////////// |
// RenderViewHost, IPC message handlers: |
-void RenderViewHost::OnMessageReceived(const IPC::Message& msg) { |
+bool RenderViewHost::OnMessageReceived(const IPC::Message& msg) { |
#if defined(OS_WIN) |
// On Windows there's a potential deadlock with sync messsages going in |
// a circle from browser -> plugin -> renderer -> browser. |
@@ -756,10 +756,11 @@ |
IPC::Message* reply = IPC::SyncMessage::GenerateReply(&msg); |
reply->set_reply_error(); |
Send(reply); |
- return; |
+ return true; |
} |
#endif |
+ bool handled = true; |
bool msg_is_ok = true; |
IPC_BEGIN_MESSAGE_MAP_EX(RenderViewHost, msg, msg_is_ok) |
IPC_MESSAGE_HANDLER(ViewHostMsg_ShowView, OnMsgShowView) |
@@ -917,7 +918,7 @@ |
IPC_MESSAGE_HANDLER(ViewHostMsg_PagesReadyForPreview, |
OnPagesReadyForPreview) |
// Have the super handle all other messages. |
- IPC_MESSAGE_UNHANDLED(RenderWidgetHost::OnMessageReceived(msg)) |
+ IPC_MESSAGE_UNHANDLED(handled = RenderWidgetHost::OnMessageReceived(msg)) |
IPC_END_MESSAGE_MAP_EX() |
if (!msg_is_ok) { |
@@ -926,6 +927,8 @@ |
UserMetrics::RecordAction(UserMetricsAction("BadMessageTerminate_RVH")); |
process()->ReceivedBadMessage(); |
} |
+ |
+ return handled; |
} |
void RenderViewHost::Shutdown() { |