diff --git a/include/core/SkPath.h b/include/core/SkPath.h
index 7769b6f..65612cb 100644
--- a/include/core/SkPath.h
+++ b/include/core/SkPath.h
@@ -579,7 +579,7 @@
     /** Returns true if the path specifies a pair of nested rectangles. If so, and if
         rect is not null, set rect[0] to the outer rectangle and rect[1] to the inner
         rectangle. If so, and dirs is not null, set dirs[0] to the direction of
-        the outer rectangle and dirs[1] to the direction of the inner rectangle. If 
+        the outer rectangle and dirs[1] to the direction of the inner rectangle. If
         the path does not specify a pair of nested rectangles, return
         false and ignore rect and dirs.
 
diff --git a/src/gpu/GrAARectRenderer.cpp b/src/gpu/GrAARectRenderer.cpp
index bef5ddb..d13a12d 100644
--- a/src/gpu/GrAARectRenderer.cpp
+++ b/src/gpu/GrAARectRenderer.cpp
@@ -670,7 +670,7 @@
     devOutside.outset(rx, ry);
 
     if (spare <= 0) {
-        this->fillAARect(gpu, target, devOutside, SkMatrix::I(), 
+        this->fillAARect(gpu, target, devOutside, SkMatrix::I(),
                          devOutside, useVertexCoverage);
         return;
     }
diff --git a/src/gpu/effects/GrTextureStripAtlas.cpp b/src/gpu/effects/GrTextureStripAtlas.cpp
index 8e9e155..e1cacec 100644
--- a/src/gpu/effects/GrTextureStripAtlas.cpp
+++ b/src/gpu/effects/GrTextureStripAtlas.cpp
@@ -278,7 +278,7 @@
                                                    fKeyTable.count(),
                                                    &target,
                                                    sizeof(AtlasRow*));
-} 
+}
 
 #ifdef SK_DEBUG
 void GrTextureStripAtlas::validate() {
diff --git a/tests/PathTest.cpp b/tests/PathTest.cpp
index bf55f9b..fa95a35 100644
--- a/tests/PathTest.cpp
+++ b/tests/PathTest.cpp
@@ -1366,11 +1366,11 @@
         f1, f2, f3, f4, f5, f6, f7, f8,
         c1, c2
     };
-    SkPath::Direction dirs[] = { 
-        SkPath::kCW_Direction, SkPath::kCW_Direction, SkPath::kCW_Direction, 
+    SkPath::Direction dirs[] = {
+        SkPath::kCW_Direction, SkPath::kCW_Direction, SkPath::kCW_Direction,
         SkPath::kCW_Direction, SkPath::kCCW_Direction, SkPath::kCCW_Direction,
-        SkPath::kCCW_Direction, SkPath::kCCW_Direction, SkPath::kCCW_Direction, 
-        SkPath::kCCW_Direction, SkPath::kCW_Direction, SkPath::kCW_Direction, 
+        SkPath::kCCW_Direction, SkPath::kCCW_Direction, SkPath::kCCW_Direction,
+        SkPath::kCCW_Direction, SkPath::kCW_Direction, SkPath::kCW_Direction,
         SkPath::kCCW_Direction, SkPath::kCW_Direction, SkPath::kUnknown_Direction,
         SkPath::kUnknown_Direction, SkPath::kUnknown_Direction, SkPath::kUnknown_Direction,
         SkPath::kUnknown_Direction, SkPath::kUnknown_Direction, SkPath::kUnknown_Direction,
