diff options
author | 2016-11-08 13:42:59 -0800 | |
---|---|---|
committer | 2016-11-08 13:42:59 -0800 | |
commit | f6bddfd33daeade5418a2ccb36b7945fac703f40 (patch) | |
tree | 6238123578cb1cb8139f6a920689a1dba3bb5bcb /src/core/SkScan_AAAPath.cpp | |
parent | dbdf6d210b7e34d66df8b08596c690b9b12e7f8a (diff) |
Do not call blitAntiRect for empty rect
BUG=chromium:662800
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2490673002
Review-Url: https://codereview.chromium.org/2490673002
Diffstat (limited to 'src/core/SkScan_AAAPath.cpp')
-rw-r--r-- | src/core/SkScan_AAAPath.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/core/SkScan_AAAPath.cpp b/src/core/SkScan_AAAPath.cpp index 91b6e397ae..c352b4dc0d 100644 --- a/src/core/SkScan_AAAPath.cpp +++ b/src/core/SkScan_AAAPath.cpp @@ -997,7 +997,10 @@ static inline void aaa_walk_convex_edges(SkAnalyticEdge* prevHead, AdditiveBlitt } // Blit all full-height rows from fullTop to fullBot - if (fullBot > fullTop) { + if (fullBot > fullTop && + // SkAAClip cannot handle the empty rect so check the non-emptiness here + // (bug chromium:662800) + (fullRite > fullLeft || f2a(partialLeft) > 0 || f2a(partialRite) > 0)) { blitter->getRealBlitter()->blitAntiRect(fullLeft - 1, fullTop, fullRite - fullLeft, fullBot - fullTop, f2a(partialLeft), f2a(partialRite)); |