| Index: content/common/gpu/client/gpu_memory_buffer_impl_ozone_native_buffer.cc
|
| diff --git a/content/common/gpu/client/gpu_memory_buffer_impl_ozone_native_buffer.cc b/content/common/gpu/client/gpu_memory_buffer_impl_ozone_native_buffer.cc
|
| index cb5c4a5166f1c51506e0435774c0535359cbd34f..1dbd8de5ddea8ce9554ad73c9da901532c2ff8ac 100644
|
| --- a/content/common/gpu/client/gpu_memory_buffer_impl_ozone_native_buffer.cc
|
| +++ b/content/common/gpu/client/gpu_memory_buffer_impl_ozone_native_buffer.cc
|
| @@ -14,6 +14,9 @@ namespace {
|
|
|
| base::StaticAtomicSequenceNumber g_next_buffer_id;
|
|
|
| +void Noop() {
|
| +}
|
| +
|
| void GpuMemoryBufferCreated(
|
| const gfx::Size& size,
|
| unsigned internalformat,
|
| @@ -22,7 +25,8 @@ void GpuMemoryBufferCreated(
|
| DCHECK_EQ(gfx::OZONE_NATIVE_BUFFER, handle.type);
|
|
|
| scoped_ptr<GpuMemoryBufferImplOzoneNativeBuffer> buffer(
|
| - new GpuMemoryBufferImplOzoneNativeBuffer(size, internalformat));
|
| + new GpuMemoryBufferImplOzoneNativeBuffer(
|
| + size, internalformat, base::Bind(&Noop)));
|
| if (!buffer->InitializeFromHandle(handle)) {
|
| callback.Run(scoped_ptr<GpuMemoryBufferImpl>());
|
| return;
|
| @@ -43,11 +47,13 @@ void GpuMemoryBufferCreatedForChildProcess(
|
|
|
| GpuMemoryBufferImplOzoneNativeBuffer::GpuMemoryBufferImplOzoneNativeBuffer(
|
| const gfx::Size& size,
|
| - unsigned internalformat)
|
| - : GpuMemoryBufferImpl(size, internalformat) {
|
| + unsigned internalformat,
|
| + const DestructionCallback& callback)
|
| + : GpuMemoryBufferImpl(size, internalformat), callback_(callback) {
|
| }
|
|
|
| GpuMemoryBufferImplOzoneNativeBuffer::~GpuMemoryBufferImplOzoneNativeBuffer() {
|
| + callback_.Run();
|
| }
|
|
|
| // static
|
|
|