clean up fix to drawBitmapRect



git-svn-id: http://skia.googlecode.com/svn/trunk@388 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/samplecode/SampleBitmapRect.cpp b/samplecode/SampleBitmapRect.cpp
index 842dfc4..0d981d6 100644
--- a/samplecode/SampleBitmapRect.cpp
+++ b/samplecode/SampleBitmapRect.cpp
@@ -60,7 +60,7 @@
         
         const SkIRect src[] = {
             { 0, 0, 32, 32 },
-            { -8, -8, 80, 80 },
+            { 0, 0, 80, 80 },
             { 32, 32, 96, 96 },
             { -32, -32, 32, 32, }
         };
@@ -73,11 +73,12 @@
 
         canvas->translate(16, 40);
         for (size_t i = 0; i < SK_ARRAY_COUNT(src); i++) {
+            SkRect srcR;
+            srcR.set(src[i]);
+            
             canvas->drawBitmap(fBitmap, 0, 0, &paint);
             canvas->drawBitmapRect(fBitmap, &src[i], dstR, &paint);
 
-            SkRect srcR;
-            srcR.set(src[i]);
             canvas->drawRect(srcR, paint);
             canvas->drawRect(dstR, paint);
             
diff --git a/src/core/SkCanvas.cpp b/src/core/SkCanvas.cpp
index ce4a624..0bf0614 100644
--- a/src/core/SkCanvas.cpp
+++ b/src/core/SkCanvas.cpp
@@ -1113,33 +1113,24 @@
     }
     
     SkMatrix matrix;
-#if 0
-    SkScalar width = SkIntToScalar(bitmapPtr->width());
-    SkScalar height = SkIntToScalar(bitmapPtr->height());
-    if (dst.width() == width && dst.height() == height) {
-        matrix.setTranslate(dst.fLeft, dst.fTop);
-    } else
-#endif
-    {
-        SkRect tmpSrc;
-        if (src) {
-            tmpSrc.set(*src);
-            // if the extract process clipped off the top or left of the
-            // original, we adjust for that here to get the position right.
-            if (tmpSrc.fLeft > 0) {
-                tmpSrc.fRight -= tmpSrc.fLeft;
-                tmpSrc.fLeft = 0;
-            }
-            if (tmpSrc.fTop > 0) {
-                tmpSrc.fBottom -= tmpSrc.fTop;
-                tmpSrc.fTop = 0;
-            }
-        } else {
-            tmpSrc.set(0, 0, SkIntToScalar(bitmap.width()),
-                       SkIntToScalar(bitmap.height()));
+    SkRect tmpSrc;
+    if (src) {
+        tmpSrc.set(*src);
+        // if the extract process clipped off the top or left of the
+        // original, we adjust for that here to get the position right.
+        if (tmpSrc.fLeft > 0) {
+            tmpSrc.fRight -= tmpSrc.fLeft;
+            tmpSrc.fLeft = 0;
         }
-        matrix.setRectToRect(tmpSrc, dst, SkMatrix::kFill_ScaleToFit);
+        if (tmpSrc.fTop > 0) {
+            tmpSrc.fBottom -= tmpSrc.fTop;
+            tmpSrc.fTop = 0;
+        }
+    } else {
+        tmpSrc.set(0, 0, SkIntToScalar(bitmap.width()),
+                   SkIntToScalar(bitmap.height()));
     }
+    matrix.setRectToRect(tmpSrc, dst, SkMatrix::kFill_ScaleToFit);
     this->internalDrawBitmap(*bitmapPtr, matrix, paint);
 }