aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorGravatar caryclark <caryclark@google.com>2016-01-06 08:27:44 -0800
committerGravatar Commit bot <commit-bot@chromium.org>2016-01-06 08:27:44 -0800
commit1e1e5094e0fda27b09826c573a3a68d08e7b6ae1 (patch)
treeaf9dfedaf33d71d6ca30539381fd651b1c9d6c72 /src
parent1de610a5287cf61d4f3a1fdc7413bd74827a8b6a (diff)
add comment
Diffstat (limited to 'src')
-rw-r--r--src/core/SkPath.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/core/SkPath.cpp b/src/core/SkPath.cpp
index 757cae043e..ab8d7359d2 100644
--- a/src/core/SkPath.cpp
+++ b/src/core/SkPath.cpp
@@ -2765,6 +2765,8 @@ static int winding_conic(const SkPoint pts[], SkScalar x, SkScalar y, SkScalar w
int* onCurveCount) {
SkConic conic(pts, weight);
SkConic chopped[2];
+ // If the data points are very large, the conic may not be monotonic but may also
+ // fail to chop. Then, the chopper does not split the original conic in two.
bool isMono = is_mono_quad(pts[0].fY, pts[1].fY, pts[2].fY) || !conic.chopAtYExtrema(chopped);
int w = winding_mono_conic(isMono ? conic : chopped[0], x, y, onCurveCount);
if (!isMono) {