| Index: gpu/command_buffer/service/image_factory.cc
|
| diff --git a/gpu/command_buffer/service/image_factory.cc b/gpu/command_buffer/service/image_factory.cc
|
| index 9a2d458abd8cf9bf3673dcc2ab43e4e69895ee41..59cae64370d74087ad22d2fd133465a86843d74f 100644
|
| --- a/gpu/command_buffer/service/image_factory.cc
|
| +++ b/gpu/command_buffer/service/image_factory.cc
|
| @@ -19,6 +19,9 @@ ImageFactory::~ImageFactory() {
|
| gfx::GpuMemoryBuffer::Format ImageFactory::ImageFormatToGpuMemoryBufferFormat(
|
| unsigned internalformat) {
|
| switch (internalformat) {
|
| + case GL_LUMINANCE:
|
| + case GL_R8:
|
| + return gfx::GpuMemoryBuffer::R_8;
|
| case GL_RGB:
|
| return gfx::GpuMemoryBuffer::RGBX_8888;
|
| case GL_RGBA:
|
| @@ -67,6 +70,7 @@ bool ImageFactory::IsImageFormatCompatibleWithGpuMemoryBufferFormat(
|
| case gfx::GpuMemoryBuffer::ETC1:
|
| case gfx::GpuMemoryBuffer::RGBX_8888:
|
| return true;
|
| + case gfx::GpuMemoryBuffer::R_8:
|
| case gfx::GpuMemoryBuffer::RGBA_8888:
|
| case gfx::GpuMemoryBuffer::BGRA_8888:
|
| return false;
|
| @@ -75,6 +79,7 @@ bool ImageFactory::IsImageFormatCompatibleWithGpuMemoryBufferFormat(
|
| return false;
|
| case GL_RGBA:
|
| switch (format) {
|
| + case gfx::GpuMemoryBuffer::R_8:
|
| case gfx::GpuMemoryBuffer::RGBX_8888:
|
| return false;
|
| case gfx::GpuMemoryBuffer::ATC:
|
| @@ -88,6 +93,9 @@ bool ImageFactory::IsImageFormatCompatibleWithGpuMemoryBufferFormat(
|
| }
|
| NOTREACHED();
|
| return false;
|
| + case GL_LUMINANCE:
|
| + case GL_R8:
|
| + return format == gfx::GpuMemoryBuffer::R_8;
|
| default:
|
| NOTREACHED();
|
| return false;
|
| @@ -110,6 +118,7 @@ bool ImageFactory::IsGpuMemoryBufferFormatSupported(
|
| return capabilities.texture_format_dxt5;
|
| case gfx::GpuMemoryBuffer::ETC1:
|
| return capabilities.texture_format_etc1;
|
| + case gfx::GpuMemoryBuffer::R_8:
|
| case gfx::GpuMemoryBuffer::RGBA_8888:
|
| case gfx::GpuMemoryBuffer::RGBX_8888:
|
| return true;
|
| @@ -132,6 +141,7 @@ bool ImageFactory::IsImageSizeValidForGpuMemoryBufferFormat(
|
| // Compressed images must have a width and height that's evenly divisible
|
| // by the block size.
|
| return size.width() % 4 == 0 && size.height() % 4 == 0;
|
| + case gfx::GpuMemoryBuffer::R_8:
|
| case gfx::GpuMemoryBuffer::RGBA_8888:
|
| case gfx::GpuMemoryBuffer::BGRA_8888:
|
| case gfx::GpuMemoryBuffer::RGBX_8888:
|
|
|