Index: content/common/gpu/gpu_command_buffer_stub.cc |
diff --git a/content/common/gpu/gpu_command_buffer_stub.cc b/content/common/gpu/gpu_command_buffer_stub.cc |
index f8692f2dcc4680c9f62b7d9ab4876f19fc170deb..07021f81ffe8458048d041c46bc0d2ec8693b646 100644 |
--- a/content/common/gpu/gpu_command_buffer_stub.cc |
+++ b/content/common/gpu/gpu_command_buffer_stub.cc |
@@ -99,6 +99,8 @@ bool GpuCommandBufferStub::OnMessageReceived(const IPC::Message& message) { |
OnInitialize); |
IPC_MESSAGE_HANDLER_DELAY_REPLY(GpuCommandBufferMsg_SetGetBuffer, |
OnSetGetBuffer); |
+ IPC_MESSAGE_HANDLER_DELAY_REPLY(GpuCommandBufferMsg_SetSharedStateBuffer, |
+ OnSetSharedStateBuffer); |
IPC_MESSAGE_HANDLER_DELAY_REPLY(GpuCommandBufferMsg_SetParent, |
OnSetParent); |
IPC_MESSAGE_HANDLER_DELAY_REPLY(GpuCommandBufferMsg_GetState, OnGetState); |
@@ -304,6 +306,17 @@ void GpuCommandBufferStub::OnSetGetBuffer( |
Send(reply_message); |
} |
+void GpuCommandBufferStub::OnSetSharedStateBuffer( |
+ int32 shm_id, IPC::Message* reply_message) { |
+ if (command_buffer_.get()) { |
+ command_buffer_->SetSharedStateBuffer(shm_id); |
+ } else { |
+ DLOG(ERROR) << "no command_buffer."; |
+ reply_message->set_reply_error(); |
+ } |
+ Send(reply_message); |
+} |
+ |
void GpuCommandBufferStub::OnSetParent(int32 parent_route_id, |
uint32 parent_texture_id, |
IPC::Message* reply_message) { |
@@ -486,9 +499,7 @@ void GpuCommandBufferStub::ReportState() { |
gfx::GLContext::LosesAllContextsOnContextLost()) { |
channel_->LoseAllContexts(); |
} else { |
- IPC::Message* msg = new GpuCommandBufferMsg_UpdateState(route_id_, state); |
- msg->set_unblock(true); |
- Send(msg); |
+ command_buffer_->UpdateState(); |
} |
} |