From 23595a59a76ae38afbbb53dd11f81fbe46ee82c1 Mon Sep 17 00:00:00 2001 From: "bsalomon@google.com" Date: Tue, 15 Jan 2013 20:58:17 +0000 Subject: [PATCH] Fix busted texture coords in GrGLBlendEffect. Review URL: https://codereview.appspot.com/7095062 git-svn-id: http://skia.googlecode.com/svn/trunk@7209 2bbb7eff-a529-9590-31e7-b0007b416f81 --- src/effects/SkBlendImageFilter.cpp | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/effects/SkBlendImageFilter.cpp b/src/effects/SkBlendImageFilter.cpp index 3c625bb..74ec7e3 100644 --- a/src/effects/SkBlendImageFilter.cpp +++ b/src/effects/SkBlendImageFilter.cpp @@ -277,20 +277,23 @@ void GrGLBlendEffect::emitCode(GrGLShaderBuilder* builder, const char* outputColor, const char* inputColor, const TextureSamplerArray& samplers) { - const char* coords; - GrSLType fgCoordsType = fForegroundEffectMatrix.emitCode(builder, key, vertexCoords, &coords, NULL, "FG"); - GrSLType bgCoordsType = fBackgroundEffectMatrix.emitCode(builder, key, vertexCoords, &coords, NULL, "BG"); + const char* fgCoords; + const char* bgCoords; + GrSLType fgCoordsType = fForegroundEffectMatrix.emitCode( + builder, key, vertexCoords, &fgCoords, NULL, "FG"); + GrSLType bgCoordsType = fBackgroundEffectMatrix.emitCode( + builder, key, vertexCoords, &bgCoords, NULL, "BG"); SkString* code = &builder->fFSCode; const char* bgColor = "bgColor"; const char* fgColor = "fgColor"; code->appendf("\t\tvec4 %s = ", fgColor); - builder->appendTextureLookup(code, samplers[0], coords, fgCoordsType); + builder->appendTextureLookup(code, samplers[0], fgCoords, fgCoordsType); code->append(";\n"); code->appendf("\t\tvec4 %s = ", bgColor); - builder->appendTextureLookup(code, samplers[1], coords, bgCoordsType); + builder->appendTextureLookup(code, samplers[1], bgCoords, bgCoordsType); code->append(";\n"); code->appendf("\t\t%s.a = 1.0 - (1.0 - %s.a) * (1.0 - %s.b);\n", outputColor, bgColor, fgColor); -- 2.7.4