Index: ppapi/proxy/ppb_graphics_3d_proxy.cc |
diff --git a/ppapi/proxy/ppb_graphics_3d_proxy.cc b/ppapi/proxy/ppb_graphics_3d_proxy.cc |
index 8a8c6b7f4d3746f43b06befe10448fd26983e7e4..81b6a70c927ddbb63cd63ce8eff4f66225185659 100644 |
--- a/ppapi/proxy/ppb_graphics_3d_proxy.cc |
+++ b/ppapi/proxy/ppb_graphics_3d_proxy.cc |
@@ -56,13 +56,15 @@ Graphics3D::~Graphics3D() { |
bool Graphics3D::Init(gpu::gles2::GLES2Implementation* share_gles2, |
const gpu::Capabilities& capabilities, |
- const SerializedHandle& shared_state) { |
+ const SerializedHandle& shared_state, |
+ uint64_t command_buffer_id) { |
PluginDispatcher* dispatcher = PluginDispatcher::GetForResource(this); |
if (!dispatcher) |
return false; |
command_buffer_.reset(new PpapiCommandBufferProxy( |
- host_resource(), dispatcher, capabilities, shared_state)); |
+ host_resource(), dispatcher, capabilities, shared_state, |
+ command_buffer_id)); |
return CreateGLES2Impl(kCommandBufferSize, kTransferBufferSize, |
share_gles2); |
@@ -173,15 +175,19 @@ PP_Resource PPB_Graphics3D_Proxy::CreateProxyResource( |
HostResource result; |
gpu::Capabilities capabilities; |
ppapi::proxy::SerializedHandle shared_state; |
+ uint64_t command_buffer_id = 0; |
dispatcher->Send(new PpapiHostMsg_PPBGraphics3D_Create(API_ID_PPB_GRAPHICS_3D, |
- instance, share_host, attribs, &result, &capabilities, &shared_state)); |
+ instance, share_host, attribs, &result, &capabilities, &shared_state, |
+ &command_buffer_id)); |
if (result.is_null()) |
return 0; |
scoped_refptr<Graphics3D> graphics_3d(new Graphics3D(result)); |
- if (!graphics_3d->Init(share_gles2, capabilities, shared_state)) |
+ if (!graphics_3d->Init(share_gles2, capabilities, shared_state, |
+ command_buffer_id)) { |
return 0; |
+ } |
return graphics_3d->GetReference(); |
} |
@@ -222,12 +228,14 @@ bool PPB_Graphics3D_Proxy::OnMessageReceived(const IPC::Message& msg) { |
} |
#if !defined(OS_NACL) |
-void PPB_Graphics3D_Proxy::OnMsgCreate(PP_Instance instance, |
- HostResource share_context, |
- const std::vector<int32_t>& attribs, |
- HostResource* result, |
- gpu::Capabilities* capabilities, |
- SerializedHandle* shared_state) { |
+void PPB_Graphics3D_Proxy::OnMsgCreate( |
+ PP_Instance instance, |
+ HostResource share_context, |
+ const std::vector<int32_t>& attribs, |
+ HostResource* result, |
+ gpu::Capabilities* capabilities, |
+ SerializedHandle* shared_state, |
+ uint64* command_buffer_id) { |
shared_state->set_null_shmem(); |
if (attribs.empty() || |
attribs.back() != PP_GRAPHICS3DATTRIB_NONE || |
@@ -246,7 +254,8 @@ void PPB_Graphics3D_Proxy::OnMsgCreate(PP_Instance instance, |
share_context.host_resource(), |
&attribs.front(), |
capabilities, |
- &handle)); |
+ &handle, |
+ command_buffer_id)); |
if (!result->is_null()) { |
shared_state->set_shmem(TransportSHMHandle(dispatcher(), handle), |
sizeof(gpu::CommandBuffer::State)); |