Avoid invalid shader creation for certain blend modes

bug:19627342

Change-Id: I41e3c1ce8e6fa52f046ec492d19de7cab92b9ec5
diff --git a/libs/hwui/ProgramCache.cpp b/libs/hwui/ProgramCache.cpp
index 8c6a91cc..7ad4a57 100644
--- a/libs/hwui/ProgramCache.cpp
+++ b/libs/hwui/ProgramCache.cpp
@@ -777,6 +777,9 @@
 }
 
 void ProgramCache::generateBlend(String8& shader, const char* name, SkXfermode::Mode mode) {
+    // TODO: update gBlendOps so this workaround isn't necessary
+    if (mode > SkXfermode::kPlus_Mode) mode = SkXfermode::kClear_Mode;
+
     shader.append("\nvec4 ");
     shader.append(name);
     shader.append("(vec4 src, vec4 dst) {\n");
@@ -830,7 +833,7 @@
     while ((index = shader.find("\n", index)) > -1) {
         String8 line(str, index - lastIndex);
         if (line.length() == 0) line.append("\n");
-        PROGRAM_LOGD("%s", line.string());
+        ALOGD("%s", line.string());
         index++;
         str += (index - lastIndex);
         lastIndex = index;