Index: content/common/gpu/client/gpu_memory_buffer_impl_win.cc |
diff --git a/content/common/gpu/client/gpu_memory_buffer_impl_win.cc b/content/common/gpu/client/gpu_memory_buffer_impl_win.cc |
index ffd4e381c7d9276e27d51e5c9d027ecca96dd33c..ed67c5bf78420719c048125cdb92ece2369784ff 100644 |
--- a/content/common/gpu/client/gpu_memory_buffer_impl_win.cc |
+++ b/content/common/gpu/client/gpu_memory_buffer_impl_win.cc |
@@ -8,15 +8,38 @@ |
namespace content { |
+// static |
scoped_ptr<GpuMemoryBufferImpl> GpuMemoryBufferImpl::Create( |
+ const gfx::Size& size, |
+ unsigned internalformat) { |
+ scoped_ptr<GpuMemoryBufferImplShm> buffer( |
+ new GpuMemoryBufferImplShm(size, internalformat)); |
+ if (!buffer->Initialize()) |
+ return scoped_ptr<GpuMemoryBufferImpl>(); |
+ |
+ return buffer.PassAs<GpuMemoryBufferImpl>(); |
+} |
+ |
+// static |
+void GpuMemoryBufferImpl::AllocateForChildProcess( |
+ const gfx::Size& size, |
+ unsigned internalformat, |
+ base::ProcessHandle child_process, |
+ gfx::GpuMemoryBufferHandle* handle) { |
+ GpuMemoryBufferImplShm::AllocateSharedMemoryForChildProcess( |
+ size, internalformat, child_process, handle); |
+} |
+ |
+// static |
+scoped_ptr<GpuMemoryBufferImpl> GpuMemoryBufferImpl::CreateFromHandle( |
gfx::GpuMemoryBufferHandle handle, |
- gfx::Size size, |
+ const gfx::Size& size, |
unsigned internalformat) { |
switch (handle.type) { |
case gfx::SHARED_MEMORY_BUFFER: { |
scoped_ptr<GpuMemoryBufferImplShm> buffer( |
new GpuMemoryBufferImplShm(size, internalformat)); |
- if (!buffer->Initialize(handle)) |
+ if (!buffer->InitializeFromHandle(handle)) |
return scoped_ptr<GpuMemoryBufferImpl>(); |
return buffer.PassAs<GpuMemoryBufferImpl>(); |