Don't allow iteration through non-finite points.

Added a unit test too.

BUG=chromium:756563

Change-Id: Ic77a89b4a98d1a553877af9807a3d3bdcd077bb9
Reviewed-on: https://skia-review.googlesource.com/44420
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Reed <reed@google.com>
diff --git a/tests/PathTest.cpp b/tests/PathTest.cpp
index bdd15fb..77f47be 100644
--- a/tests/PathTest.cpp
+++ b/tests/PathTest.cpp
@@ -4911,3 +4911,18 @@
         REPORTER_ASSERT(reporter, !bytesRead);
     }
 }
+
+DEF_TEST(NonFinitePathIteration, reporter) {
+    SkPath path;
+    path.moveTo(SK_ScalarInfinity, SK_ScalarInfinity);
+
+    int verbs = 0;
+
+    SkPath::RawIter iter(path);
+    SkPoint         pts[4];
+    while (iter.next(pts) != SkPath::kDone_Verb) {
+        verbs++;
+    }
+
+    REPORTER_ASSERT(reporter, verbs == 0);
+}