Index: src/gpu/glsl/GrGLSLProgramBuilder.cpp |
diff --git a/src/gpu/glsl/GrGLSLProgramBuilder.cpp b/src/gpu/glsl/GrGLSLProgramBuilder.cpp |
index 83b50ad534a8cf4f6a89608a851b34502219d92c..5275f6e32834ef4372c9f775394595632d9a3b1b 100644 |
--- a/src/gpu/glsl/GrGLSLProgramBuilder.cpp |
+++ b/src/gpu/glsl/GrGLSLProgramBuilder.cpp |
@@ -240,6 +240,12 @@ void GrGLSLProgramBuilder::emitSamplers(const GrProcessor& processor, |
this->addFeature(visibility, |
1 << GrGLSLShaderBuilder::kExternalTexture_GLSLPrivateFeature, |
externalFeatureString); |
+ } else if (kSamplerBuffer_GrSLType == samplerType) { |
+ if (const char* extension = this->glslCaps()->bufferTextureExtensionString()) { |
+ this->addFeature(visibility, |
+ 1 << GrGLSLShaderBuilder::kBufferTexture_GLSLPrivateFeature, |
+ extension); |
+ } |
} |
name.printf("Sampler%d", t); |
localSamplerUniforms[t] = this->uniformHandler()->addUniform(access.getVisibility(), |