aboutsummaryrefslogtreecommitdiffhomepage
path: root/tools/gpu/GrContextFactory.cpp
diff options
context:
space:
mode:
authorGravatar Eric Karl <ericrk@chromium.org>2017-05-08 12:02:07 -0700
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-05-09 17:41:25 +0000
commit5c77975e4c00e18e644c72b56f369858acd11b15 (patch)
tree187dff83863784225a9f2aa4d8c5abacefc12ec0 /tools/gpu/GrContextFactory.cpp
parentfda4600e41ded0b8f0a54222e2dc8a85d53b4121 (diff)
Add flag to avoid stencil buffers in Skia
Certain systems experience a leak in the GL driver associated with stencil buffers. Attempts to avoid the leak (while still using stencil buffers) dind't succeed. This patch adds a GrContextOption fAvoidStencilBuffers. This disables certain path rendering modes, as well as stencil based masking/clipping. Bug: 713854 Change-Id: Ifa6c0f2bd5ee395547bda9165d6c79d197ae8b8b Reviewed-on: https://skia-review.googlesource.com/15253 Commit-Queue: Eric Karl <ericrk@chromium.org> Reviewed-by: Eric Karl <ericrk@chromium.org> Reviewed-by: Brian Salomon <bsalomon@google.com>
Diffstat (limited to 'tools/gpu/GrContextFactory.cpp')
-rw-r--r--tools/gpu/GrContextFactory.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/tools/gpu/GrContextFactory.cpp b/tools/gpu/GrContextFactory.cpp
index 6ed89542c9..e02bc1b371 100644
--- a/tools/gpu/GrContextFactory.cpp
+++ b/tools/gpu/GrContextFactory.cpp
@@ -230,6 +230,9 @@ ContextInfo GrContextFactory::getContextInfoInternal(ContextType type, ContextOv
if (ContextOverrides::kAllowSRGBWithoutDecodeControl & overrides) {
grOptions.fRequireDecodeDisableForSRGB = false;
}
+ if (ContextOverrides::kAvoidStencilBuffers & overrides) {
+ grOptions.fAvoidStencilBuffers = true;
+ }
sk_sp<GrContext> grCtx(GrContext::Create(backend, backendContext, grOptions));
if (!grCtx.get()) {
return ContextInfo();