Index: src/gpu/GrContextFactory.cpp |
diff --git a/src/gpu/GrContextFactory.cpp b/src/gpu/GrContextFactory.cpp |
index 15af8162b1e90bdbf0fa71d5da6c3ce358703eda..097b99b0b75f50e5082e0a66ac93635feecea5fe 100755 |
--- a/src/gpu/GrContextFactory.cpp |
+++ b/src/gpu/GrContextFactory.cpp |
@@ -24,13 +24,13 @@ |
#include "GrCaps.h" |
GrContextFactory::ContextInfo* GrContextFactory::getContextInfo(GLContextType type, |
- GrGLStandard forcedGpuAPI, |
- GLContextOptions options) { |
+ GrGLStandard forcedGpuAPI) { |
for (int i = 0; i < fContexts.count(); ++i) { |
- if (fContexts[i]->fType == type && |
- fContexts[i]->fOptions == options && |
- (forcedGpuAPI == kNone_GrGLStandard || |
- forcedGpuAPI == fContexts[i]->fGLContext->gl()->fStandard)) { |
+ if (forcedGpuAPI != kNone_GrGLStandard && |
+ forcedGpuAPI != fContexts[i]->fGLContext->gl()->fStandard) |
+ continue; |
+ |
+ if (fContexts[i]->fType == type) { |
fContexts[i]->fGLContext->makeCurrent(); |
return fContexts[i]; |
} |
@@ -38,6 +38,7 @@ |
SkAutoTUnref<SkGLContext> glCtx; |
SkAutoTUnref<GrContext> grCtx; |
switch (type) { |
+ case kNVPR_GLContextType: // fallthru |
case kNative_GLContextType: |
glCtx.reset(SkCreatePlatformGLContext(forcedGpuAPI)); |
break; |
@@ -74,7 +75,7 @@ |
// Block NVPR from non-NVPR types. |
SkAutoTUnref<const GrGLInterface> glInterface(SkRef(glCtx->gl())); |
- if (!(kEnableNVPR_GLContextOptions & options)) { |
+ if (kNVPR_GLContextType != type) { |
glInterface.reset(GrGLInterfaceRemoveNVPR(glInterface)); |
if (!glInterface) { |
return nullptr; |
@@ -91,7 +92,7 @@ |
if (!grCtx.get()) { |
return nullptr; |
} |
- if (kEnableNVPR_GLContextOptions & options) { |
+ if (kNVPR_GLContextType == type) { |
if (!grCtx->caps()->shaderCaps()->pathRenderingSupport()) { |
return nullptr; |
} |
@@ -101,6 +102,5 @@ |
ctx->fGLContext = SkRef(glCtx.get()); |
ctx->fGrContext = SkRef(grCtx.get()); |
ctx->fType = type; |
- ctx->fOptions = options; |
return ctx; |
} |