diff --git a/tests/BitmapCopyTest.cpp b/tests/BitmapCopyTest.cpp
index 009e8b1..81fde73 100644
--- a/tests/BitmapCopyTest.cpp
+++ b/tests/BitmapCopyTest.cpp
@@ -244,7 +244,7 @@
     for (size_t i = 0; i < SK_ARRAY_COUNT(gPairs); i++) {
         for (size_t j = 0; j < SK_ARRAY_COUNT(gPairs); j++) {
             SkBitmap srcOpaque, srcPremul, dst;
-            
+
             {
                 SkColorTable* ctOpaque = NULL;
                 SkColorTable* ctPremul = NULL;
@@ -259,7 +259,7 @@
                 srcPremul.allocPixels(ctPremul);
                 SkSafeUnref(ctOpaque);
                 SkSafeUnref(ctPremul);
-                
+
                 srcOpaque.setIsOpaque(true);
                 srcPremul.setIsOpaque(false);
             }
@@ -333,7 +333,7 @@
                         REPORTER_ASSERT(reporter,
                                     (copy.getColorTable() != NULL) == hasCT);
                     }
-                    
+
                     bitmap = srcPremul;
                     bitmap.setIsVolatile(false);
                     if (bitmap.extractSubset(&subset, r)) {
