| Index: src/gpu/gl/GrGLProgram.cpp
|
| diff --git a/src/gpu/gl/GrGLProgram.cpp b/src/gpu/gl/GrGLProgram.cpp
|
| index f34fce43b401fb28ccc3b59c22bf41baf2e2a896..dd73d01dc1e27f40cf1498e6b8b7d4481ea7c49d 100644
|
| --- a/src/gpu/gl/GrGLProgram.cpp
|
| +++ b/src/gpu/gl/GrGLProgram.cpp
|
| @@ -88,10 +88,9 @@ void GrGLProgram::generateMipmaps(const GrPrimitiveProcessor& primProc,
|
| const GrPipeline& pipeline) {
|
| this->generateMipmaps(primProc, pipeline.getAllowSRGBInputs());
|
|
|
| - int numProcessors = fFragmentProcessors.count();
|
| - for (int i = 0; i < numProcessors; ++i) {
|
| - const GrFragmentProcessor& processor = pipeline.getFragmentProcessor(i);
|
| - this->generateMipmaps(processor, pipeline.getAllowSRGBInputs());
|
| + GrFragmentProcessor::Iter iter(pipeline);
|
| + while (const GrFragmentProcessor* fp = iter.next()) {
|
| + this->generateMipmaps(*fp, pipeline.getAllowSRGBInputs());
|
| }
|
|
|
| if (primProc.getPixelLocalStorageState() !=
|
| @@ -104,12 +103,17 @@ void GrGLProgram::generateMipmaps(const GrPrimitiveProcessor& primProc,
|
| void GrGLProgram::setFragmentData(const GrPrimitiveProcessor& primProc,
|
| const GrPipeline& pipeline,
|
| int* nextSamplerIdx) {
|
| - int numProcessors = fFragmentProcessors.count();
|
| - for (int i = 0; i < numProcessors; ++i) {
|
| - const GrFragmentProcessor& processor = pipeline.getFragmentProcessor(i);
|
| - fFragmentProcessors[i]->setData(fProgramDataManager, processor);
|
| - this->bindTextures(processor, pipeline.getAllowSRGBInputs(), nextSamplerIdx);
|
| + GrFragmentProcessor::Iter iter(pipeline);
|
| + GrGLSLFragmentProcessor::Iter glslIter(fFragmentProcessors.begin(),
|
| + fFragmentProcessors.count());
|
| + const GrFragmentProcessor* fp = iter.next();
|
| + GrGLSLFragmentProcessor* glslFP = glslIter.next();
|
| + while (fp && glslFP) {
|
| + glslFP->setData(fProgramDataManager, *fp);
|
| + this->bindTextures(*fp, pipeline.getAllowSRGBInputs(), nextSamplerIdx);
|
| + fp = iter.next(), glslFP = glslIter.next();
|
| }
|
| + SkASSERT(!fp && !glslFP);
|
| }
|
|
|
|
|
|
|