From ba5b5f5171680701d27c68f13e378eb5d539ae07 Mon Sep 17 00:00:00 2001 From: Mike Reed Date: Fri, 18 May 2018 16:29:11 -0400 Subject: harden line2d effect Suggested by https://fuzzer.skia.org/category/n32_canvas/file/c3JjL2NvcmUvU2tTdHJva2UuY3Bw? Bug: skia: Change-Id: I8ec48f844bfa5d063f0ab1bdfe0612ec4673ada3 Reviewed-on: https://skia-review.googlesource.com/129260 Reviewed-by: Kevin Lubick Commit-Queue: Mike Reed --- include/effects/Sk2DPathEffect.h | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'include/effects') diff --git a/include/effects/Sk2DPathEffect.h b/include/effects/Sk2DPathEffect.h index 5b7df35df2..5ebadab0d5 100644 --- a/include/effects/Sk2DPathEffect.h +++ b/include/effects/Sk2DPathEffect.h @@ -56,6 +56,9 @@ private: class SK_API SkLine2DPathEffect : public Sk2DPathEffect { public: static sk_sp Make(SkScalar width, const SkMatrix& matrix) { + if (!(width >= 0)) { + return nullptr; + } return sk_sp(new SkLine2DPathEffect(width, matrix)); } @@ -67,7 +70,9 @@ public: protected: SkLine2DPathEffect(SkScalar width, const SkMatrix& matrix) - : Sk2DPathEffect(matrix), fWidth(width) {} + : Sk2DPathEffect(matrix), fWidth(width) { + SkASSERT(width >= 0); + } void flatten(SkWriteBuffer&) const override; void nextSpan(int u, int v, int ucount, SkPath*) const override; -- cgit v1.2.3