aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/gl/GrGLCaps.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/gpu/gl/GrGLCaps.cpp')
-rw-r--r--src/gpu/gl/GrGLCaps.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/gpu/gl/GrGLCaps.cpp b/src/gpu/gl/GrGLCaps.cpp
index 038a1b1a73..4996859c51 100644
--- a/src/gpu/gl/GrGLCaps.cpp
+++ b/src/gpu/gl/GrGLCaps.cpp
@@ -331,14 +331,18 @@ void GrGLCaps::init(const GrContextOptions& contextOptions,
shaderCaps->fIntegerSupport = ctxInfo.version() >= GR_GL_VER(3, 0) &&
ctxInfo.glslGeneration() >= k130_GrGLSLGeneration;
- }
- else {
+ } else {
shaderCaps->fDualSourceBlendingSupport = ctxInfo.hasExtension("GL_EXT_blend_func_extended");
shaderCaps->fShaderDerivativeSupport = ctxInfo.version() >= GR_GL_VER(3, 0) ||
ctxInfo.hasExtension("GL_OES_standard_derivatives");
- shaderCaps->fGeometryShaderSupport = ctxInfo.hasExtension("GL_EXT_geometry_shader");
+ if (ctxInfo.version() >= GR_GL_VER(3,2)) {
+ shaderCaps->fGeometryShaderSupport = true;
+ } else if (ctxInfo.hasExtension("GL_EXT_geometry_shader")) {
+ shaderCaps->fGeometryShaderSupport = true;
+ shaderCaps->fGeometryShaderExtensionString = "GL_EXT_geometry_shader";
+ }
if (shaderCaps->fGeometryShaderSupport && kQualcomm_GrGLDriver == ctxInfo.driver()) {
// Qualcomm driver @103.0 has been observed to crash compiling ccpr geometry shaders.
// @127.0 is the earliest verified driver to not crash.