diff options
author | nduca@chromium.org <nduca@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-12-02 00:19:34 +0000 |
---|---|---|
committer | nduca@chromium.org <nduca@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-12-02 00:19:34 +0000 |
commit | 3f9331ac5068bb0cf9df1436b74b473c31e68e15 (patch) | |
tree | 1023dc427968b7539940d8dbe9443ab313d6b431 | |
parent | 984a8b80a12bafab96db02c3dcfa68aa74b9e4eb (diff) | |
download | chromium_src-3f9331ac5068bb0cf9df1436b74b473c31e68e15.zip chromium_src-3f9331ac5068bb0cf9df1436b74b473c31e68e15.tar.gz chromium_src-3f9331ac5068bb0cf9df1436b74b473c31e68e15.tar.bz2 |
In CreateCompositorHostWindow, reply with null window handle if RenderViewHost does not exist.
BUG=64850
TEST=Verify that associated crash goes away in Canary
Review URL: http://codereview.chromium.org/5490001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@67917 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r-- | chrome/browser/gpu_process_host.cc | 5 | ||||
-rw-r--r-- | chrome/gpu/gpu_command_buffer_stub.cc | 8 |
2 files changed, 9 insertions, 4 deletions
diff --git a/chrome/browser/gpu_process_host.cc b/chrome/browser/gpu_process_host.cc index eeb50bd..2cfc018 100644 --- a/chrome/browser/gpu_process_host.cc +++ b/chrome/browser/gpu_process_host.cc @@ -398,6 +398,11 @@ void CreateCompositorHostWindowDispatcher( RenderViewHost* host = RenderViewHost::FromID(renderer_id, render_view_id); if (!host) { + GpuHostMsg_CreateCompositorHostWindow::WriteReplyParams(reply_msg, + gfx::kNullPluginWindow); + BrowserThread::PostTask( + BrowserThread::IO, FROM_HERE, + NewRunnableFunction(&SendDelayedReply, reply_msg)); return; } diff --git a/chrome/gpu/gpu_command_buffer_stub.cc b/chrome/gpu/gpu_command_buffer_stub.cc index 6112782..ba26f23 100644 --- a/chrome/gpu/gpu_command_buffer_stub.cc +++ b/chrome/gpu/gpu_command_buffer_stub.cc @@ -80,10 +80,10 @@ bool GpuCommandBufferStub::CreateCompositorWindow() { // Ask the browser to create the the host window. ChildThread* gpu_thread = ChildThread::current(); gfx::PluginWindowHandle host_window_id = gfx::kNullPluginWindow; - gpu_thread->Send(new GpuHostMsg_CreateCompositorHostWindow( - renderer_id_, - render_view_id_, - &host_window_id)); + gpu_thread->Send(new GpuHostMsg_CreateCompositorHostWindow( + renderer_id_, + render_view_id_, + &host_window_id)); if (host_window_id == gfx::kNullPluginWindow) return false; HWND host_window = static_cast<HWND>(host_window_id); |