Index: ui/gl/gl_image_linux_dma_buffer.cc |
diff --git a/ui/gl/gl_image_linux_dma_buffer.cc b/ui/gl/gl_image_linux_dma_buffer.cc |
index ff18f8f0c2b9e9df4d468338ffb1ab955c309a06..13f40e90348c1190d5a96cc44db784bb0087f566 100644 |
--- a/ui/gl/gl_image_linux_dma_buffer.cc |
+++ b/ui/gl/gl_image_linux_dma_buffer.cc |
@@ -16,59 +16,37 @@ |
namespace gfx { |
namespace { |
-bool ValidFormat(unsigned internalformat, gfx::GpuMemoryBuffer::Format format) { |
+bool ValidInternalFormat(unsigned internalformat) { |
switch (internalformat) { |
- case GL_ATC_RGB_AMD: |
- return format == gfx::GpuMemoryBuffer::ATC; |
- case GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD: |
- return format == gfx::GpuMemoryBuffer::ATCIA; |
- case GL_COMPRESSED_RGB_S3TC_DXT1_EXT: |
- return format == gfx::GpuMemoryBuffer::DXT1; |
- case GL_COMPRESSED_RGBA_S3TC_DXT5_EXT: |
- return format == gfx::GpuMemoryBuffer::DXT5; |
- case GL_ETC1_RGB8_OES: |
- return format == gfx::GpuMemoryBuffer::ETC1; |
case GL_RGB: |
- switch (format) { |
- case gfx::GpuMemoryBuffer::RGBX_8888: |
- return true; |
- case gfx::GpuMemoryBuffer::ATC: |
- case gfx::GpuMemoryBuffer::ATCIA: |
- case gfx::GpuMemoryBuffer::DXT1: |
- case gfx::GpuMemoryBuffer::DXT5: |
- case gfx::GpuMemoryBuffer::ETC1: |
- case gfx::GpuMemoryBuffer::R_8: |
- case gfx::GpuMemoryBuffer::RGBA_8888: |
- case gfx::GpuMemoryBuffer::BGRA_8888: |
- case gfx::GpuMemoryBuffer::YUV_420: |
- return false; |
- } |
- NOTREACHED(); |
- return false; |
case GL_RGBA: |
- switch (format) { |
- case gfx::GpuMemoryBuffer::BGRA_8888: |
- return true; |
- case gfx::GpuMemoryBuffer::ATC: |
- case gfx::GpuMemoryBuffer::ATCIA: |
- case gfx::GpuMemoryBuffer::DXT1: |
- case gfx::GpuMemoryBuffer::DXT5: |
- case gfx::GpuMemoryBuffer::ETC1: |
- case gfx::GpuMemoryBuffer::R_8: |
- case gfx::GpuMemoryBuffer::RGBX_8888: |
- case gfx::GpuMemoryBuffer::RGBA_8888: |
- case gfx::GpuMemoryBuffer::YUV_420: |
- return false; |
- } |
- NOTREACHED(); |
- return false; |
- case GL_R8: |
- return false; |
+ case GL_BGRA_EXT: |
+ return true; |
default: |
return false; |
} |
} |
+bool ValidFormat(gfx::GpuMemoryBuffer::Format format) { |
+ switch (format) { |
+ case gfx::GpuMemoryBuffer::RGBA_8888: |
+ case gfx::GpuMemoryBuffer::BGRA_8888: |
+ case gfx::GpuMemoryBuffer::RGBX_8888: |
+ return true; |
+ case gfx::GpuMemoryBuffer::ATC: |
+ case gfx::GpuMemoryBuffer::ATCIA: |
+ case gfx::GpuMemoryBuffer::DXT1: |
+ case gfx::GpuMemoryBuffer::DXT5: |
+ case gfx::GpuMemoryBuffer::ETC1: |
+ case gfx::GpuMemoryBuffer::R_8: |
+ case gfx::GpuMemoryBuffer::YUV_420: |
+ return false; |
+ } |
+ |
+ NOTREACHED(); |
+ return false; |
+} |
+ |
EGLint FourCC(gfx::GpuMemoryBuffer::Format format) { |
switch (format) { |
case gfx::GpuMemoryBuffer::BGRA_8888: |
@@ -108,8 +86,13 @@ GLImageLinuxDMABuffer::~GLImageLinuxDMABuffer() { |
bool GLImageLinuxDMABuffer::Initialize(const base::FileDescriptor& handle, |
gfx::GpuMemoryBuffer::Format format, |
int pitch) { |
- if (!ValidFormat(internalformat_, format)) { |
- LOG(ERROR) << "Invalid format: " << internalformat_; |
+ if (!ValidInternalFormat(internalformat_)) { |
+ LOG(ERROR) << "Invalid internalformat: " << internalformat_; |
+ return false; |
+ } |
+ |
+ if (!ValidFormat(format)) { |
+ LOG(ERROR) << "Invalid format: " << format; |
return false; |
} |
@@ -133,8 +116,8 @@ bool GLImageLinuxDMABuffer::Initialize(const base::FileDescriptor& handle, |
EGL_DMA_BUF_PLANE0_PITCH_EXT, |
pitch, |
EGL_NONE}; |
- return GLImageEGL::Initialize( |
- EGL_LINUX_DMA_BUF_EXT, static_cast<EGLClientBuffer>(NULL), attrs); |
+ return GLImageEGL::Initialize(EGL_LINUX_DMA_BUF_EXT, |
+ static_cast<EGLClientBuffer>(nullptr), attrs); |
} |
} // namespace gfx |