need to apply the prepathmatrix (or perhaps push it on our mv stack)



git-svn-id: http://skia.googlecode.com/svn/trunk@804 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/src/gpu/SkGpuDevice.cpp b/src/gpu/SkGpuDevice.cpp
index 606d197..22d5b20 100644
--- a/src/gpu/SkGpuDevice.cpp
+++ b/src/gpu/SkGpuDevice.cpp
@@ -755,27 +755,18 @@
     SkPath*         pathPtr = const_cast<SkPath*>(&origSrcPath);
     bool            doFill = true;
     SkPath          tmpPath;
-    SkMatrix        tmpMatrix;
-    const SkMatrix* matrix = draw.fMatrix;
 
     if (prePathMatrix) {
-        if (paint.getPathEffect() || paint.getStyle() != SkPaint::kFill_Style ||
-            paint.getRasterizer()) {
-            SkPath* result = pathPtr;
+        SkPath* result = pathPtr;
 
-            if (!pathIsMutable) {
-                result = &tmpPath;
-                pathIsMutable = true;
-            }
-            pathPtr->transform(*prePathMatrix, result);
-            pathPtr = result;
-        } else {
-            if (!tmpMatrix.setConcat(*matrix, *prePathMatrix)) {
-                // overflow
-                return;
-            }
-            matrix = &tmpMatrix;
+        if (!pathIsMutable) {
+            result = &tmpPath;
+            pathIsMutable = true;
         }
+        // should I push prePathMatrix on our MV stack temporarily, instead
+        // of applying it here? See SkDraw.cpp
+        pathPtr->transform(*prePathMatrix, result);
+        pathPtr = result;
     }
     // at this point we're done with prePathMatrix
     SkDEBUGCODE(prePathMatrix = (const SkMatrix*)0x50FF8001;)
@@ -792,7 +783,7 @@
         SkPath* devPathPtr = pathIsMutable ? pathPtr : &tmpPath;
 
         // transform the path into device space
-        pathPtr->transform(*matrix, devPathPtr);
+        pathPtr->transform(*draw.fMatrix, devPathPtr);
 
         drawWithMaskFilter(fContext, *devPathPtr, paint.getMaskFilter(),
                            *draw.fMatrix, *draw.fClip, draw.fBounder, &grPaint);