summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndroid Chromium Automerger <chromium-automerger@android>2014-05-05 20:42:43 +0000
committerAndroid Chromium Automerger <chromium-automerger@android>2014-05-05 20:42:43 +0000
commit1abe0e981de19b02c442866e0ff80cb3d0bcc1da (patch)
treeeca4e485dc9e2bfae192a8db644b7f72a614888a
parent1ea97f503fd42a8d99f30a95f677e93ee6b4b657 (diff)
parentd8fd8c7718508a11547505b00b1dbb324d461767 (diff)
downloadsrc-1abe0e981de19b02c442866e0ff80cb3d0bcc1da.tar.gz
Merge third_party/skia/src from https://chromium.googlesource.com/external/skia/src.git at d8fd8c7718508a11547505b00b1dbb324d461767
This commit was generated by merge_from_chromium.py. Change-Id: Ic22099cdcd61a332e1eb91b60b20eed2e6261ca3
-rw-r--r--core/SkScan_Path.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/core/SkScan_Path.cpp b/core/SkScan_Path.cpp
index 66e95076..b32d68e7 100644
--- a/core/SkScan_Path.cpp
+++ b/core/SkScan_Path.cpp
@@ -602,7 +602,11 @@ void SkScan::FillPath(const SkPath& path, const SkRegion& origClip,
// don't reference "origClip" any more, just use clipPtr
SkIRect ir;
- path.getBounds().round(&ir);
+ // We deliberately call dround() instead of round(), since we can't afford to generate a
+ // bounds that is tighter than the corresponding SkEdges. The edge code basically converts
+ // the floats to fixed, and then "rounds". If we called round() instead of dround() here,
+ // we could generate the wrong ir for values like 0.4999997.
+ path.getBounds().dround(&ir);
if (ir.isEmpty()) {
if (path.isInverseFillType()) {
blitter->blitRegion(*clipPtr);