Index: src/gpu/effects/GrYUVEffect.cpp |
diff --git a/src/gpu/effects/GrYUVEffect.cpp b/src/gpu/effects/GrYUVEffect.cpp |
index 97ef663bb7bd18e5c187ccb77e9734fb66e97d10..20865f43b5e57437353032784236ab10917c34a8 100644 |
--- a/src/gpu/effects/GrYUVEffect.cpp |
+++ b/src/gpu/effects/GrYUVEffect.cpp |
@@ -100,19 +100,23 @@ public: |
void emitCode(EmitArgs& args) override { |
GrGLSLFPFragmentBuilder* fragBuilder = args.fFragBuilder; |
+ GrGLSLUniformHandler* uniformHandler = args.fUniformHandler; |
const char* colorSpaceMatrix = nullptr; |
- fMatrixUni = args.fUniformHandler->addUniform(kFragment_GrShaderFlag, |
- kMat44f_GrSLType, kDefault_GrSLPrecision, |
- "ColorSpaceMatrix", &colorSpaceMatrix); |
+ fMatrixUni = uniformHandler->addUniform(kFragment_GrShaderFlag, |
+ kMat44f_GrSLType, kDefault_GrSLPrecision, |
+ "ColorSpaceMatrix", &colorSpaceMatrix); |
fragBuilder->codeAppendf("%s = vec4(", args.fOutputColor); |
- fragBuilder->appendTextureLookup(args.fTexSamplers[0], args.fCoords[0].c_str(), |
+ fragBuilder->appendTextureLookup(uniformHandler->getSampler(args.fTexSamplers[0]), |
+ args.fCoords[0].c_str(), |
args.fCoords[0].getType()); |
fragBuilder->codeAppend(".r,"); |
- fragBuilder->appendTextureLookup(args.fTexSamplers[1], args.fCoords[1].c_str(), |
+ fragBuilder->appendTextureLookup(uniformHandler->getSampler(args.fTexSamplers[1]), |
+ args.fCoords[1].c_str(), |
args.fCoords[1].getType()); |
fragBuilder->codeAppend(".r,"); |
- fragBuilder->appendTextureLookup(args.fTexSamplers[2], args.fCoords[2].c_str(), |
+ fragBuilder->appendTextureLookup(uniformHandler->getSampler(args.fTexSamplers[2]), |
+ args.fCoords[2].c_str(), |
args.fCoords[2].getType()); |
fragBuilder->codeAppendf(".r, 1.0) * %s;", colorSpaceMatrix); |
} |