| Index: gpu/ipc/common/gpu_memory_buffer_support.cc
|
| diff --git a/gpu/ipc/common/gpu_memory_buffer_support.cc b/gpu/ipc/common/gpu_memory_buffer_support.cc
|
| index 77f98359d26a34b845720227545aeb54bdcaf1bf..76a2bd27533a88dc34a10d55f760469a1ade518d 100644
|
| --- a/gpu/ipc/common/gpu_memory_buffer_support.cc
|
| +++ b/gpu/ipc/common/gpu_memory_buffer_support.cc
|
| @@ -20,7 +20,11 @@ gfx::GpuMemoryBufferType GetNativeGpuMemoryBufferType() {
|
| #if defined(OS_LINUX)
|
| return gfx::NATIVE_PIXMAP;
|
| #endif
|
| +#if defined(OS_WIN)
|
| + return gfx::DIRECT_COMPOSITION;
|
| +#else
|
| return gfx::EMPTY_BUFFER;
|
| +#endif
|
| }
|
|
|
| bool IsNativeGpuMemoryBufferConfigurationSupported(gfx::BufferFormat format,
|
| @@ -42,6 +46,8 @@ bool IsNativeGpuMemoryBufferConfigurationSupported(gfx::BufferFormat format,
|
| format == gfx::BufferFormat::RGBA_F16 ||
|
| format == gfx::BufferFormat::UYVY_422 ||
|
| format == gfx::BufferFormat::YUV_420_BIPLANAR;
|
| + case gfx::BufferUsage::SCANOUT_ASYNC:
|
| + return false;
|
| }
|
| NOTREACHED();
|
| return false;
|
| @@ -56,8 +62,26 @@ bool IsNativeGpuMemoryBufferConfigurationSupported(gfx::BufferFormat format,
|
| ->IsConfigurationSupported(format, usage);
|
| #endif
|
|
|
| - NOTREACHED();
|
| +#if defined(OS_WIN)
|
| + switch (usage) {
|
| + case gfx::BufferUsage::SCANOUT:
|
| + case gfx::BufferUsage::SCANOUT_ASYNC:
|
| + return format == gfx::BufferFormat::BGRA_8888 ||
|
| + format == gfx::BufferFormat::RGBA_8888 ||
|
| + format == gfx::BufferFormat::BGRX_8888 ||
|
| + format == gfx::BufferFormat::BGRA_8888;
|
| + case gfx::BufferUsage::GPU_READ:
|
| + case gfx::BufferUsage::SCANOUT_CPU_READ_WRITE:
|
| + case gfx::BufferUsage::GPU_READ_CPU_READ_WRITE:
|
| + case gfx::BufferUsage::GPU_READ_CPU_READ_WRITE_PERSISTENT:
|
| + return false;
|
| + }
|
| +#endif
|
| +
|
| return false;
|
| +
|
| + // NOTREACHED();
|
| + // return false;
|
| }
|
|
|
| } // namespace gpu
|
|
|