Index: content/browser/renderer_host/gpu_message_filter.cc |
diff --git a/content/browser/renderer_host/gpu_message_filter.cc b/content/browser/renderer_host/gpu_message_filter.cc |
index 75ad4faf046eaea191be62ba00acfd17044ed419..de2b339e8e67a1a5208857353bd6ce3d51baa3f2 100644 |
--- a/content/browser/renderer_host/gpu_message_filter.cc |
+++ b/content/browser/renderer_host/gpu_message_filter.cc |
@@ -52,6 +52,9 @@ GpuMessageFilter::GpuMessageFilter(int render_process_id, |
GpuMessageFilter::~GpuMessageFilter() { |
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO)); |
+ GpuProcessHost* host = GpuProcessHost::FromID(gpu_process_id_); |
+ if (host) |
+ host->UnregisterRenderWidgetHelper(render_process_id_); |
} |
bool GpuMessageFilter::OnMessageReceived( |
@@ -111,6 +114,8 @@ void GpuMessageFilter::OnEstablishGpuChannel( |
gpu_process_id_ = host->host_id(); |
} |
+ host->RegisterRenderWidgetHelper(render_process_id_, render_widget_helper_); |
+ |
host->EstablishGpuChannel( |
render_process_id_, |
share_contexts_, |