aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/SkDraw.cpp
diff options
context:
space:
mode:
authorGravatar Mike Reed <reed@google.com>2018-03-15 14:33:39 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2018-03-15 19:06:46 +0000
commite11d7932940bc78d995e7976119d558c921febc4 (patch)
tree26bd037173ba09b1cf3e2b4e283eb4271daa8c34 /src/core/SkDraw.cpp
parentf6148b6d2342b9e77d2fd49c6f7233351c7106e5 (diff)
detect non-finite pts
Bug: oss-fuzz:6638 Change-Id: I72dab6783099facbe8d658ec1bc4b175a383e174 Reviewed-on: https://skia-review.googlesource.com/114565 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
Diffstat (limited to 'src/core/SkDraw.cpp')
-rw-r--r--src/core/SkDraw.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/core/SkDraw.cpp b/src/core/SkDraw.cpp
index e231f01bfa..62b84d804c 100644
--- a/src/core/SkDraw.cpp
+++ b/src/core/SkDraw.cpp
@@ -511,6 +511,9 @@ void SkDraw::drawPoints(SkCanvas::PointMode mode, size_t count,
n = MAX_DEV_PTS;
}
matrix->mapPoints(devPts, pts, n);
+ if (!SkScalarsAreFinite(&devPts[0].fX, n * 2)) {
+ return;
+ }
proc(rec, devPts, n, bltr);
pts += n - backup;
SkASSERT(SkToInt(count) >= n);