[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
diff --git a/src/gpu/GrGLProgram.cpp b/src/gpu/GrGLProgram.cpp
index 93303ca..28e4fc1 100644
--- a/src/gpu/GrGLProgram.cpp
+++ b/src/gpu/GrGLProgram.cpp
@@ -893,7 +893,8 @@
                         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,