diff options
author | 2011-11-09 14:14:38 +0000 | |
---|---|---|
committer | 2011-11-09 14:14:38 +0000 | |
commit | e63799d3fd4571202098a9d0dc02f582e9ec8f9d (patch) | |
tree | c293714cbf893b71917343c6159a544aaf00edad /src/gpu/GrGLProgram.cpp | |
parent | 002af91302e35378ae9a7074291ce7645b947316 (diff) |
[GPU] when writing to unpremult dest and alpha is 0, make rgb=0
Review URL: http://codereview.appspot.com/5340062/
git-svn-id: http://skia.googlecode.com/svn/trunk@2640 2bbb7eff-a529-9590-31e7-b0007b416f81
Diffstat (limited to 'src/gpu/GrGLProgram.cpp')
-rw-r--r-- | src/gpu/GrGLProgram.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/gpu/GrGLProgram.cpp b/src/gpu/GrGLProgram.cpp index 93303cabce..28e4fc178a 100644 --- a/src/gpu/GrGLProgram.cpp +++ b/src/gpu/GrGLProgram.cpp @@ -893,7 +893,8 @@ bool GrGLProgram::genProgram(const GrGLInterface* gl, inCoverage.c_str(), &segments.fFSCode); if (ProgramDesc::kNo_OutputPM == fProgramDesc.fOutputPM) { - segments.fFSCode.appendf("\t%s = vec4(%s.rgb / %s.a, %s.a);\n", + segments.fFSCode.appendf("\t%s = %s.a <= 0.0 ? vec4(0,0,0,0) : vec4(%s.rgb / %s.a, %s.a);\n", + fsColorOutput, fsColorOutput, fsColorOutput, fsColorOutput, |