Index: content/browser/renderer_host/render_view_host_impl.cc |
diff --git a/content/browser/renderer_host/render_view_host_impl.cc b/content/browser/renderer_host/render_view_host_impl.cc |
index d782ebeb9721680ac016e8f8c2c814b05dc723be..754300817981a5c818c1ca7867c88a74247275c4 100644 |
--- a/content/browser/renderer_host/render_view_host_impl.cc |
+++ b/content/browser/renderer_host/render_view_host_impl.cc |
@@ -272,6 +272,12 @@ RenderViewHostImpl::RenderViewHostImpl( |
GetProcess()->AddObserver(this); |
+ // New views may be created during RenderProcessHost::ProcessDied(), within a |
+ // brief window where the internal ChannelProxy is null. This ensures that the |
+ // ChannelProxy is re-initialized in such cases so that subsequent messages |
+ // make their way to the new renderer once its restarted. |
+ GetProcess()->EnableSendQueue(); |
+ |
if (ResourceDispatcherHostImpl::Get()) { |
BrowserThread::PostTask( |
BrowserThread::IO, FROM_HERE, |