| Index: src/gpu/gl/GrGLInterface.cpp
|
| diff --git a/src/gpu/gl/GrGLInterface.cpp b/src/gpu/gl/GrGLInterface.cpp
|
| index e9ba32ed2484276ef23e01ee20225458d24dbacb..c192611f5099a26109bf8a82c6e52e4043cea848 100644
|
| --- a/src/gpu/gl/GrGLInterface.cpp
|
| +++ b/src/gpu/gl/GrGLInterface.cpp
|
| @@ -56,6 +56,10 @@ const GrGLInterface* GrGLInterfaceRemoveNVPR(const GrGLInterface* interface) {
|
| newInterface->fFunctions.fCoverStrokePath = NULL;
|
| newInterface->fFunctions.fCoverFillPathInstanced = NULL;
|
| newInterface->fFunctions.fCoverStrokePathInstanced = NULL;
|
| + newInterface->fFunctions.fStencilThenCoverFillPath = NULL;
|
| + newInterface->fFunctions.fStencilThenCoverStrokePath = NULL;
|
| + newInterface->fFunctions.fStencilThenCoverFillPathInstanced = NULL;
|
| + newInterface->fFunctions.fStencilThenCoverStrokePathInstanced = NULL;
|
| newInterface->fFunctions.fProgramPathFragmentInputGen = NULL;
|
| return newInterface;
|
| }
|
| @@ -467,18 +471,23 @@ bool GrGLInterface::validate() const {
|
| NULL == fFunctions.fCoverFillPath ||
|
| NULL == fFunctions.fCoverStrokePath ||
|
| NULL == fFunctions.fCoverFillPathInstanced ||
|
| - NULL == fFunctions.fCoverStrokePathInstanced ||
|
| - NULL == fFunctions.fStencilThenCoverFillPath ||
|
| - NULL == fFunctions.fStencilThenCoverStrokePath ||
|
| - NULL == fFunctions.fStencilThenCoverFillPathInstanced ||
|
| - NULL == fFunctions.fStencilThenCoverStrokePathInstanced) {
|
| + NULL == fFunctions.fCoverStrokePathInstanced) {
|
| RETURN_FALSE_INTERFACE
|
| }
|
| - // Currently ProgramPathFragmentInputGen is not used on
|
| - // OpenGL, rather PathTexGen is.
|
| - if ((kGL_GrGLStandard == fStandard && NULL == fFunctions.fPathTexGen) ||
|
| - (kGLES_GrGLStandard == fStandard && NULL == fFunctions.fProgramPathFragmentInputGen)) {
|
| - RETURN_FALSE_INTERFACE
|
| + if (kGL_GrGLStandard == fStandard) {
|
| + // Some methods only exist on desktop
|
| + if (NULL == fFunctions.fPathTexGen) {
|
| + RETURN_FALSE_INTERFACE
|
| + }
|
| + } else {
|
| + // All additions through v1.3 exist on GLES
|
| + if (NULL == fFunctions.fStencilThenCoverFillPath ||
|
| + NULL == fFunctions.fStencilThenCoverStrokePath ||
|
| + NULL == fFunctions.fStencilThenCoverFillPathInstanced ||
|
| + NULL == fFunctions.fStencilThenCoverStrokePathInstanced ||
|
| + NULL == fFunctions.fProgramPathFragmentInputGen) {
|
| + RETURN_FALSE_INTERFACE
|
| + }
|
| }
|
| }
|
|
|
|
|