summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornduca@chromium.org <nduca@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-12-02 00:19:34 +0000
committernduca@chromium.org <nduca@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-12-02 00:19:34 +0000
commit3f9331ac5068bb0cf9df1436b74b473c31e68e15 (patch)
tree1023dc427968b7539940d8dbe9443ab313d6b431
parent984a8b80a12bafab96db02c3dcfa68aa74b9e4eb (diff)
downloadchromium_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.cc5
-rw-r--r--chrome/gpu/gpu_command_buffer_stub.cc8
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);