Index: src/gpu/gl/GrGLProgramDataManager.cpp |
diff --git a/src/gpu/gl/GrGLProgramDataManager.cpp b/src/gpu/gl/GrGLProgramDataManager.cpp |
index 9513a3fd57b086c60b95b8f1b4df61bcac9a7e5a..056e7b73dd2c4a2314130385c1b692de7fb130c8 100644 |
--- a/src/gpu/gl/GrGLProgramDataManager.cpp |
+++ b/src/gpu/gl/GrGLProgramDataManager.cpp |
@@ -89,6 +89,19 @@ void GrGLProgramDataManager::setSamplers(const SkTArray<GrGLSampler>& samplers) |
} |
} |
+void GrGLProgramDataManager::set1i(UniformHandle u, int32_t i) const { |
+ const Uniform& uni = fUniforms[u.toIndex()]; |
+ SkASSERT(uni.fType == kInt_GrSLType); |
+ SkASSERT(GrGLSLShaderVar::kNonArray == uni.fArrayCount); |
+ SkDEBUGCODE(this->printUnused(uni)); |
+ if (kUnusedUniform != uni.fFSLocation) { |
+ GR_GL_CALL(fGpu->glInterface(), Uniform1i(uni.fFSLocation, i)); |
+ } |
+ if (kUnusedUniform != uni.fVSLocation && uni.fVSLocation != uni.fFSLocation) { |
+ GR_GL_CALL(fGpu->glInterface(), Uniform1i(uni.fVSLocation, i)); |
+ } |
+} |
+ |
void GrGLProgramDataManager::set1f(UniformHandle u, float v0) const { |
const Uniform& uni = fUniforms[u.toIndex()]; |
SkASSERT(uni.fType == kFloat_GrSLType); |