| Index: gpu/ipc/host/gpu_memory_buffer_support.cc
|
| diff --git a/gpu/ipc/host/gpu_memory_buffer_support.cc b/gpu/ipc/host/gpu_memory_buffer_support.cc
|
| index 66884870a1c0c4821ae04beaacb701b357fe76f2..ba6652426e89bd1e0e9178ab32628aff66ea6d55 100644
|
| --- a/gpu/ipc/host/gpu_memory_buffer_support.cc
|
| +++ b/gpu/ipc/host/gpu_memory_buffer_support.cc
|
| @@ -35,7 +35,7 @@ bool AreNativeGpuMemoryBuffersEnabled() {
|
| GpuMemoryBufferConfigurationSet GetNativeGpuMemoryBufferConfigurations() {
|
| GpuMemoryBufferConfigurationSet configurations;
|
|
|
| -#if defined(USE_OZONE) || defined(OS_MACOSX)
|
| +#if defined(USE_OZONE) || defined(OS_MACOSX) || defined(OS_WIN)
|
| if (AreNativeGpuMemoryBuffersEnabled()) {
|
| const gfx::BufferFormat kNativeFormats[] = {
|
| gfx::BufferFormat::R_8, gfx::BufferFormat::RG_88,
|
| @@ -45,6 +45,7 @@ GpuMemoryBufferConfigurationSet GetNativeGpuMemoryBufferConfigurations() {
|
| gfx::BufferFormat::YVU_420, gfx::BufferFormat::YUV_420_BIPLANAR};
|
| const gfx::BufferUsage kNativeUsages[] = {
|
| gfx::BufferUsage::GPU_READ, gfx::BufferUsage::SCANOUT,
|
| + gfx::BufferUsage::SCANOUT_ASYNC,
|
| gfx::BufferUsage::GPU_READ_CPU_READ_WRITE,
|
| gfx::BufferUsage::GPU_READ_CPU_READ_WRITE_PERSISTENT};
|
| for (auto format : kNativeFormats) {
|
| @@ -68,6 +69,7 @@ GpuMemoryBufferConfigurationSet GetNativeGpuMemoryBufferConfigurations() {
|
| gfx::BufferFormat::YVU_420, gfx::BufferFormat::YUV_420_BIPLANAR};
|
| const gfx::BufferUsage kGPUReadWriteUsages[] = {
|
| gfx::BufferUsage::GPU_READ, gfx::BufferUsage::SCANOUT,
|
| + gfx::BufferUsage::SCANOUT_ASYNC,
|
| gfx::BufferUsage::SCANOUT_CPU_READ_WRITE};
|
| for (auto format : kGPUReadWriteFormats) {
|
| for (auto usage : kGPUReadWriteUsages) {
|
| @@ -83,7 +85,7 @@ GpuMemoryBufferConfigurationSet GetNativeGpuMemoryBufferConfigurations() {
|
|
|
| uint32_t GetImageTextureTarget(gfx::BufferFormat format,
|
| gfx::BufferUsage usage) {
|
| -#if defined(USE_OZONE) || defined(OS_MACOSX)
|
| +#if defined(USE_OZONE) || defined(OS_MACOSX) || defined(OS_WIN)
|
| GpuMemoryBufferConfigurationSet native_configurations =
|
| GetNativeGpuMemoryBufferConfigurations();
|
| if (native_configurations.find(std::make_pair(format, usage)) ==
|
| @@ -99,6 +101,8 @@ uint32_t GetImageTextureTarget(gfx::BufferFormat format,
|
| case gfx::IO_SURFACE_BUFFER:
|
| // IOSurface backed images require GL_TEXTURE_RECTANGLE_ARB.
|
| return GL_TEXTURE_RECTANGLE_ARB;
|
| + case gfx::DIRECT_COMPOSITION:
|
| + return GL_TEXTURE_2D;
|
| case gfx::SHARED_MEMORY_BUFFER:
|
| case gfx::EMPTY_BUFFER:
|
| break;
|
|
|