| Index: content/common/gpu/gpu_memory_buffer_factory_ozone_native_buffer.cc
|
| diff --git a/content/common/gpu/gpu_memory_buffer_factory_ozone_native_buffer.cc b/content/common/gpu/gpu_memory_buffer_factory_ozone_native_buffer.cc
|
| index 6185150e5cf71764ea4ffcef46548084ae8253e3..7ffa3af0997753bc889efca3122f3dd242d24678 100644
|
| --- a/content/common/gpu/gpu_memory_buffer_factory_ozone_native_buffer.cc
|
| +++ b/content/common/gpu/gpu_memory_buffer_factory_ozone_native_buffer.cc
|
| @@ -79,13 +79,26 @@ gpu::ImageFactory* GpuMemoryBufferFactoryOzoneNativeBuffer::AsImageFactory() {
|
| }
|
|
|
| scoped_refptr<gfx::GLImage>
|
| -GpuMemoryBufferFactoryOzoneNativeBuffer::CreateImageForGpuMemoryBuffer(
|
| - const gfx::GpuMemoryBufferHandle& handle,
|
| +GpuMemoryBufferFactoryOzoneNativeBuffer::CreateImageForGpuMemoryBuffers(
|
| + const std::vector<gfx::GpuMemoryBufferHandle>& handles,
|
| const gfx::Size& size,
|
| - gfx::GpuMemoryBuffer::Format format,
|
| + const std::vector<gfx::GpuMemoryBuffer::Format>& formats,
|
| unsigned internalformat,
|
| int client_id) {
|
| + // TODO(emircan): See http://crbug.com/439520; support passing multiple
|
| + // buffers when new multi-planar formats are added.
|
| + size_t num_buffers =
|
| + gpu::ImageFactory::NumberOfPlanesForImageFormat(internalformat);
|
| + if (num_buffers != 1) {
|
| + NOTIMPLEMENTED();
|
| + return scoped_refptr<gfx::GLImage>();
|
| + }
|
| +
|
| + const gfx::GpuMemoryBufferHandle& handle = handles[0];
|
| + const gfx::GpuMemoryBuffer::Format format = formats[0];
|
| +
|
| DCHECK_EQ(handle.type, gfx::OZONE_NATIVE_BUFFER);
|
| +
|
| return ozone_native_buffer_factory_.CreateImageForGpuMemoryBuffer(
|
| handle.id, size, format, internalformat, client_id);
|
| }
|
|
|