| Index: src/gpu/gl/GrGLCaps.cpp
|
| diff --git a/src/gpu/gl/GrGLCaps.cpp b/src/gpu/gl/GrGLCaps.cpp
|
| index 5ee75460cf1664476d1c1e0a78260839c95692df..cecacbfda1ec78a1b027f7879879526b5324a55c 100644
|
| --- a/src/gpu/gl/GrGLCaps.cpp
|
| +++ b/src/gpu/gl/GrGLCaps.cpp
|
| @@ -219,9 +219,12 @@ bool GrGLCaps::init(const GrGLContextInfo& ctxInfo, const GrGLInterface* gli) {
|
| fUseNonVBOVertexAndIndexDynamicData = true;
|
| }
|
|
|
| - if ((kGL_GrGLStandard == standard && version >= GR_GL_VER(4,3)) ||
|
| - (kGLES_GrGLStandard == standard && version >= GR_GL_VER(3,0)) ||
|
| - ctxInfo.hasExtension("GL_ARB_invalidate_subdata")) {
|
| + // A driver but on the nexus 6 causes incorrect dst copies when invalidate is called beforehand.
|
| + // Thus we are blacklisting this extension for now on Adreno4xx devices.
|
| + if (kAdreno4xx_GrGLRenderer != ctxInfo.renderer() &&
|
| + ((kGL_GrGLStandard == standard && version >= GR_GL_VER(4,3)) ||
|
| + (kGLES_GrGLStandard == standard && version >= GR_GL_VER(3,0)) ||
|
| + ctxInfo.hasExtension("GL_ARB_invalidate_subdata"))) {
|
| fDiscardRenderTargetSupport = true;
|
| fInvalidateFBType = kInvalidate_InvalidateFBType;
|
| } else if (ctxInfo.hasExtension("GL_EXT_discard_framebuffer")) {
|
|
|