Index: src/gpu/gl/GrGLCaps.cpp |
diff --git a/src/gpu/gl/GrGLCaps.cpp b/src/gpu/gl/GrGLCaps.cpp |
index 0bfcc39236889c12a8cc760f6d9796c30463f5b5..d95e10ba64d80d3c53ad73e48e725db38d299161 100644 |
--- a/src/gpu/gl/GrGLCaps.cpp |
+++ b/src/gpu/gl/GrGLCaps.cpp |
@@ -284,6 +284,17 @@ void GrGLCaps::init(const GrContextOptions& contextOptions, |
ctxInfo.hasExtension("GL_OES_standard_derivatives"); |
} |
+ if (ctxInfo.hasExtension("GL_EXT_shader_pixel_local_storage")) { |
+ #define GL_MAX_SHADER_PIXEL_LOCAL_STORAGE_FAST_SIZE_EXT 0x8F63 |
+ GR_GL_GetIntegerv(gli, GL_MAX_SHADER_PIXEL_LOCAL_STORAGE_FAST_SIZE_EXT, |
+ &glslCaps->fPixelLocalStorageSize); |
+ glslCaps->fPLSPathRenderingSupport = glslCaps->fFBFetchSupport; |
+ } |
+ else { |
+ glslCaps->fPixelLocalStorageSize = 0; |
+ glslCaps->fPLSPathRenderingSupport = false; |
+ } |
+ |
/************************************************************************** |
* GrCaps fields |
**************************************************************************/ |
@@ -531,7 +542,6 @@ void GrGLCaps::initGLSL(const GrGLContextInfo& ctxInfo) { |
GrGLSLCaps* glslCaps = static_cast<GrGLSLCaps*>(fShaderCaps.get()); |
glslCaps->fGLSLGeneration = ctxInfo.glslGeneration(); |
- |
if (kGLES_GrGLStandard == standard) { |
if (ctxInfo.hasExtension("GL_EXT_shader_framebuffer_fetch")) { |
glslCaps->fFBFetchNeedsCustomOutput = (version >= GR_GL_VER(3, 0)); |