| Index: third_party/WebKit/Source/platform/graphics/gpu/Extensions3DUtil.cpp
|
| diff --git a/third_party/WebKit/Source/platform/graphics/gpu/Extensions3DUtil.cpp b/third_party/WebKit/Source/platform/graphics/gpu/Extensions3DUtil.cpp
|
| index 51f032e281b4632911f471c584ae1c0bc0593e19..d3c63f8af410e3b52435d32238014e4aca2ffe10 100644
|
| --- a/third_party/WebKit/Source/platform/graphics/gpu/Extensions3DUtil.cpp
|
| +++ b/third_party/WebKit/Source/platform/graphics/gpu/Extensions3DUtil.cpp
|
| @@ -5,6 +5,8 @@
|
| #include "platform/graphics/gpu/Extensions3DUtil.h"
|
|
|
| #include "gpu/command_buffer/client/gles2_interface.h"
|
| +#include "third_party/khronos/GLES2/gl2ext.h"
|
| +#include "third_party/khronos/GLES3/gl3.h"
|
| #include "wtf/PtrUtil.h"
|
| #include "wtf/text/CString.h"
|
| #include "wtf/text/StringHash.h"
|
| @@ -80,8 +82,14 @@ bool Extensions3DUtil::canUseCopyTextureCHROMIUM(GLenum destTarget,
|
| // TODO(zmo): restriction of (RGB || RGBA)/UNSIGNED_BYTE/(Level 0) should be
|
| // lifted when GLES2Interface::CopyTextureCHROMIUM(...) are fully functional.
|
| if (destTarget == GL_TEXTURE_2D &&
|
| - (destFormat == GL_RGB || destFormat == GL_RGBA) &&
|
| - destType == GL_UNSIGNED_BYTE && !level)
|
| + ((destType == GL_UNSIGNED_BYTE &&
|
| + (destFormat == GL_RGB || destFormat == GL_RGBA)) ||
|
| + (destType == GL_FLOAT &&
|
| + ((destFormat == GL_RGBA &&
|
| + supportsExtension("GL_CHROMIUM_color_buffer_float_rgba")) ||
|
| + (destFormat == GL_RGB &&
|
| + supportsExtension("GL_CHROMIUM_color_buffer_float_rgb"))))) &&
|
| + !level)
|
| return true;
|
| return false;
|
| }
|
|
|