| Index: src/gpu/GrPathProcessor.cpp
|
| diff --git a/src/gpu/GrPathProcessor.cpp b/src/gpu/GrPathProcessor.cpp
|
| index 0e856520d413c71af475d920e42b9ae93710f9b8..f52ef489eecb8aee54fbba55bfdbca7c8a006d1a 100644
|
| --- a/src/gpu/GrPathProcessor.cpp
|
| +++ b/src/gpu/GrPathProcessor.cpp
|
| @@ -12,6 +12,7 @@
|
| #include "glsl/GrGLSLFragmentShaderBuilder.h"
|
| #include "glsl/GrGLSLProcessorTypes.h"
|
| #include "glsl/GrGLSLProgramBuilder.h"
|
| +#include "glsl/GrGLSLVarying.h"
|
|
|
| class GrGLPathProcessor : public GrGLSLPrimitiveProcessor {
|
| public:
|
| @@ -30,7 +31,7 @@ public:
|
| const GrPathProcessor& pathProc = args.fGP.cast<GrPathProcessor>();
|
|
|
| // emit transforms
|
| - this->emitTransforms(args.fPB, args.fTransformsIn, args.fTransformsOut);
|
| + this->emitTransforms(args.fVaryingHandler, args.fTransformsIn, args.fTransformsOut);
|
|
|
| // Setup uniform color
|
| if (pathProc.opts().readsColor()) {
|
| @@ -49,7 +50,9 @@ public:
|
| }
|
| }
|
|
|
| - void emitTransforms(GrGLSLGPBuilder* pb, const TransformsIn& tin, TransformsOut* tout) {
|
| + void emitTransforms(GrGLSLVaryingHandler* varyingHandler,
|
| + const TransformsIn& tin,
|
| + TransformsOut* tout) {
|
| tout->push_back_n(tin.count());
|
| fInstalledTransforms.push_back_n(tin.count());
|
| for (int i = 0; i < tin.count(); i++) {
|
| @@ -63,8 +66,10 @@ public:
|
| SkString strVaryingName("MatrixCoord");
|
| strVaryingName.appendf("_%i_%i", i, t);
|
| GrGLSLVertToFrag v(varyingType);
|
| + GrGLVaryingHandler* glVaryingHandler = (GrGLVaryingHandler*) varyingHandler;
|
| fInstalledTransforms[i][t].fHandle =
|
| - pb->addSeparableVarying(strVaryingName.c_str(), &v).toIndex();
|
| + glVaryingHandler->addPathProcessingVarying(strVaryingName.c_str(),
|
| + &v).toIndex();
|
| fInstalledTransforms[i][t].fType = varyingType;
|
|
|
| SkNEW_APPEND_TO_TARRAY(&(*tout)[i], GrGLSLTransformedCoords,
|
|
|