aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/gl
diff options
context:
space:
mode:
authorGravatar joshualitt <joshualitt@chromium.org>2014-10-24 15:02:11 -0700
committerGravatar Commit bot <commit-bot@chromium.org>2014-10-24 15:02:11 -0700
commitd3de40dfdf2340578f06dd8bddcf523ffff88462 (patch)
treed7aeafe5c6554b82e1f24a199b1acec1255671bd /src/gpu/gl
parent27c1521ccf0f833affa1182d6d9bc5e31b3af351 (diff)
bug fix for k1
TBR= BUG=skia: Review URL: https://codereview.chromium.org/675213003
Diffstat (limited to 'src/gpu/gl')
-rw-r--r--src/gpu/gl/builders/GrGLNvprProgramBuilder.cpp14
-rw-r--r--src/gpu/gl/builders/GrGLNvprProgramBuilder.h5
2 files changed, 6 insertions, 13 deletions
diff --git a/src/gpu/gl/builders/GrGLNvprProgramBuilder.cpp b/src/gpu/gl/builders/GrGLNvprProgramBuilder.cpp
index 86b1d7f167..3d991a2e2c 100644
--- a/src/gpu/gl/builders/GrGLNvprProgramBuilder.cpp
+++ b/src/gpu/gl/builders/GrGLNvprProgramBuilder.cpp
@@ -39,22 +39,18 @@ void GrGLNvprProgramBuilder::emitTransforms(const GrFragmentStage& processorStag
suffixedVaryingName.appendf("_%i", t);
varyingName = suffixedVaryingName.c_str();
}
- const char* vsVaryingName;
- const char* fsVaryingName;
- ifp->fTransforms[t].fHandle = this->addSeparableVarying(varyingType, varyingName,
- &vsVaryingName, &fsVaryingName);
+ GrGLVertToFrag v(varyingType);
+ ifp->fTransforms[t].fHandle = this->addSeparableVarying(varyingName, &v);
ifp->fTransforms[t].fType = varyingType;
SkNEW_APPEND_TO_TARRAY(outCoords, GrGLProcessor::TransformedCoords,
- (SkString(fsVaryingName), varyingType));
+ (SkString(v.fsIn()), varyingType));
}
}
GrGLInstalledFragProc::ShaderVarHandle
-GrGLNvprProgramBuilder::addSeparableVarying(GrSLType type,
- const char* name,
- const char** vsOutName,
- const char** fsInName) {
+GrGLNvprProgramBuilder::addSeparableVarying(const char* name, GrGLVarying* v) {
+ this->addVarying(name, v);
SeparableVaryingInfo& varying = fSeparableVaryingInfos.push_back();
varying.fVariable = fFS.fInputs.back();
return GrGLInstalledFragProc::ShaderVarHandle(fSeparableVaryingInfos.count() - 1);
diff --git a/src/gpu/gl/builders/GrGLNvprProgramBuilder.h b/src/gpu/gl/builders/GrGLNvprProgramBuilder.h
index 4bf7e02414..008aff74d7 100644
--- a/src/gpu/gl/builders/GrGLNvprProgramBuilder.h
+++ b/src/gpu/gl/builders/GrGLNvprProgramBuilder.h
@@ -41,10 +41,7 @@ private:
* varyings. Without a vertex shader, such as with NV_path_rendering, GL APIs are used to
* populate the variable. The APIs can refer to the variable through the returned handle.
*/
- ShaderVarHandle addSeparableVarying(GrSLType type,
- const char* name,
- const char** vsOutName,
- const char** fsInName);
+ ShaderVarHandle addSeparableVarying(const char* name, GrGLVarying* v);
void resolveSeparableVaryings(GrGLuint programId);