Index: content/common/gpu/gpu_memory_buffer_factory_shared_memory.cc |
diff --git a/content/common/gpu/gpu_memory_buffer_factory_shared_memory.cc b/content/common/gpu/gpu_memory_buffer_factory_shared_memory.cc |
index 790fcab9f8ae4bfcda1daba8d4b1638a446cdb03..992decd875d5e06e2637e8a17f9c8ae995d1a8ae 100644 |
--- a/content/common/gpu/gpu_memory_buffer_factory_shared_memory.cc |
+++ b/content/common/gpu/gpu_memory_buffer_factory_shared_memory.cc |
@@ -7,7 +7,7 @@ |
#include <vector> |
#include "base/logging.h" |
-#include "content/common/gpu/client/gpu_memory_buffer_impl.h" |
+#include "content/common/gpu/client/gpu_memory_buffer_impl_shared_memory.h" |
#include "ui/gl/gl_image.h" |
#include "ui/gl/gl_image_shared_memory.h" |
@@ -24,7 +24,8 @@ void GpuMemoryBufferFactorySharedMemory:: |
std::vector<Configuration>* configurations) { |
const Configuration supported_configurations[] = { |
{ gfx::GpuMemoryBuffer::RGBA_8888, gfx::GpuMemoryBuffer::MAP }, |
- { gfx::GpuMemoryBuffer::BGRA_8888, gfx::GpuMemoryBuffer::MAP } |
+ { gfx::GpuMemoryBuffer::BGRA_8888, gfx::GpuMemoryBuffer::MAP }, |
+ { gfx::GpuMemoryBuffer::YUV_420, gfx::GpuMemoryBuffer::MAP } |
}; |
configurations->assign( |
supported_configurations, |
@@ -39,19 +40,13 @@ GpuMemoryBufferFactorySharedMemory::CreateGpuMemoryBuffer( |
gfx::GpuMemoryBuffer::Usage usage, |
int client_id, |
gfx::PluginWindowHandle surface_handle) { |
- base::SharedMemory shared_memory; |
- |
- size_t stride_in_bytes = 0; |
- if (!GpuMemoryBufferImpl::StrideInBytes( |
- size.width(), format, &stride_in_bytes)) |
+ size_t buffer_size = 0u; |
+ if (!GpuMemoryBufferImplSharedMemory::BufferSizeInBytes(size, format, |
+ &buffer_size)) |
return gfx::GpuMemoryBufferHandle(); |
- base::CheckedNumeric<size_t> size_in_bytes = stride_in_bytes; |
- size_in_bytes *= size.height(); |
- if (!size_in_bytes.IsValid()) |
- return gfx::GpuMemoryBufferHandle(); |
- |
- if (!shared_memory.CreateAnonymous(size_in_bytes.ValueOrDie())) |
+ base::SharedMemory shared_memory; |
+ if (!shared_memory.CreateAnonymous(buffer_size)) |
return gfx::GpuMemoryBufferHandle(); |
gfx::GpuMemoryBufferHandle handle; |