Index: src/gpu/gl/GrGLProgram.cpp |
diff --git a/src/gpu/gl/GrGLProgram.cpp b/src/gpu/gl/GrGLProgram.cpp |
index c1f5b37b07790fd2fce269d91f157687b0ae2925..d84c510ef34800621c687f9821451a1bf6db5b4d 100644 |
--- a/src/gpu/gl/GrGLProgram.cpp |
+++ b/src/gpu/gl/GrGLProgram.cpp |
@@ -89,9 +89,11 @@ void GrGLProgram::setData(const GrPrimitiveProcessor& primProc, |
this->setFragmentData(primProc, pipeline, textureBindings); |
- const GrXferProcessor& xp = pipeline.getXferProcessor(); |
- fXferProcessor->fGLProc->setData(fProgramDataManager, xp); |
- append_texture_bindings(fXferProcessor.get(), xp, textureBindings); |
+ if (primProc.getPixelLocalStorageState() != GrPixelLocalStorageState::kDraw_State) { |
+ const GrXferProcessor& xp = pipeline.getXferProcessor(); |
+ fXferProcessor->fGLProc->setData(fProgramDataManager, xp); |
+ append_texture_bindings(fXferProcessor.get(), xp, textureBindings); |
+ } |
} |
void GrGLProgram::setFragmentData(const GrPrimitiveProcessor& primProc, |