diff options
author | Yuqian Li <liyuqian@google.com> | 2018-05-31 15:18:54 -0700 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2018-06-01 12:16:15 +0000 |
commit | 9ea47bedb945fe51c7805b4f2defccccb8249865 (patch) | |
tree | ae49df8f45fc072e38b8024659ff9b1bef7dadd0 /src/core/SkScan_DAAPath.cpp | |
parent | fbe7166685b860a530ebe545aef5596c6a86c403 (diff) |
Skip bad line segments inside gen_alpha_deltas
Bug: chromium:847386
Change-Id: I5bb3268c27ecfbd66268adbc36be3ea72e0a69ba
Reviewed-on: https://skia-review.googlesource.com/131324
Reviewed-by: Cary Clark <caryclark@google.com>
Commit-Queue: Cary Clark <caryclark@google.com>
Auto-Submit: Yuqian Li <liyuqian@google.com>
Diffstat (limited to 'src/core/SkScan_DAAPath.cpp')
-rw-r--r-- | src/core/SkScan_DAAPath.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/core/SkScan_DAAPath.cpp b/src/core/SkScan_DAAPath.cpp index 329e69e120..572814b584 100644 --- a/src/core/SkScan_DAAPath.cpp +++ b/src/core/SkScan_DAAPath.cpp @@ -182,8 +182,9 @@ void gen_alpha_deltas(const SkPath& path, const SkIRect& clippedIR, const SkIRec } SkAnalyticEdge l, r; - l.setLine(lb->fP0, lb->fP1); - r.setLine(rb->fP0, rb->fP1); + if (!l.setLine(lb->fP0, lb->fP1) || !r.setLine(rb->fP0, rb->fP1)) { + continue; + } SkFixed xorUpperY = l.fUpperY ^ r.fUpperY; SkFixed xorLowerY = l.fLowerY ^ r.fLowerY; |