Index: chrome/browser/renderer_host/browser_render_process_host.cc |
=================================================================== |
--- chrome/browser/renderer_host/browser_render_process_host.cc (revision 28676) |
+++ chrome/browser/renderer_host/browser_render_process_host.cc (working copy) |
@@ -886,7 +886,11 @@ |
void BrowserRenderProcessHost::OnChannelError() { |
// Our child process has died. If we didn't expect it, it's a crash. |
// In any case, we need to let everyone know it's gone. |
- DCHECK(channel_.get()); |
+ // The OnChannelError notification can fire multiple times due to nested sync |
+ // calls to a renderer. If we don't have a valid channel here it means we |
+ // already handled the error. |
+ if (!channel_.get()) |
+ return; |
bool child_exited; |
bool did_crash; |