Partial revert of r9812 & put rest of r9812 behind a compile flag

https://codereview.chromium.org/18317003/



git-svn-id: http://skia.googlecode.com/svn/trunk@9832 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/src/gpu/GrAARectRenderer.cpp b/src/gpu/GrAARectRenderer.cpp
index 5c24f6e..d6a0f33 100644
--- a/src/gpu/GrAARectRenderer.cpp
+++ b/src/gpu/GrAARectRenderer.cpp
@@ -472,7 +472,11 @@
     if (useVertexCoverage) {
         innerColor = GrColorPackRGBA(scale, scale, scale, scale);
     } else {
-        innerColor = SkAlphaMulQ(target->getDrawState().getColor(), scale);
+        if (0xff == scale) {
+            innerColor = target->getDrawState().getColor();	
+        } else {	
+            innerColor = SkAlphaMulQ(target->getDrawState().getColor(), scale);	
+        }	
     }
 
     verts += 4 * vsize;
@@ -724,6 +728,7 @@
     GrPoint* fan2Pos = reinterpret_cast<GrPoint*>(verts + 8 * vsize);
     GrPoint* fan3Pos = reinterpret_cast<GrPoint*>(verts + 12 * vsize);
 
+#ifndef SK_IGNORE_THIN_STROKED_RECT_FIX
     // TODO: this only really works if the X & Y margins are the same all around
     // the rect
     SkScalar inset = SkMinScalar(SK_Scalar1, devOutside.fRight - devInside.fRight);
@@ -731,6 +736,9 @@
     inset = SkMinScalar(inset, devInside.fTop - devOutside.fTop);
     inset = SK_ScalarHalf * SkMinScalar(inset, devOutside.fBottom - devInside.fBottom);
     SkASSERT(inset >= 0);
+#else
+    SkScalar inset = SK_ScalarHalf;
+#endif
 
     // outermost
     set_inset_fan(fan0Pos, vsize, devOutside, -SK_ScalarHalf, -SK_ScalarHalf);
@@ -759,7 +767,11 @@
     if (useVertexCoverage) {
         innerColor = GrColorPackRGBA(scale, scale, scale, scale);
     } else {
-        innerColor = SkAlphaMulQ(target->getDrawState().getColor(), scale);
+        if (0xff == scale) {
+            innerColor = target->getDrawState().getColor();	
+        } else {	
+            innerColor = SkAlphaMulQ(target->getDrawState().getColor(), scale);
+        }
     }
 
     verts += 4 * vsize;