diff options
-rw-r--r-- | gm/strokefill.cpp | 16 | ||||
-rw-r--r-- | src/gpu/GrPathUtils.cpp | 2 | ||||
-rw-r--r-- | src/gpu/GrTessellator.cpp | 2 | ||||
-rw-r--r-- | src/gpu/ops/GrDefaultPathRenderer.cpp | 2 |
4 files changed, 19 insertions, 3 deletions
diff --git a/gm/strokefill.cpp b/gm/strokefill.cpp index 51936403e8..2e96cd7c36 100644 --- a/gm/strokefill.cpp +++ b/gm/strokefill.cpp @@ -358,3 +358,19 @@ DEF_SIMPLE_GM(bug339297, canvas, 640, 480) { paint.setStrokeWidth(1); canvas->drawPath(path, paint); } + +DEF_SIMPLE_GM(bug6987, canvas, 200, 200) { + SkPaint paint; + paint.setStyle(SkPaint::kStroke_Style); + paint.setStrokeWidth(0.0001f); + paint.setAntiAlias(true); + SkPath path; + canvas->save(); + canvas->scale(50000.0f, 50000.0f); + path.moveTo(0.0005f, 0.0004f); + path.lineTo(0.0008f, 0.0010f); + path.lineTo(0.0002f, 0.0010f); + path.close(); + canvas->drawPath(path, paint); + canvas->restore(); +} diff --git a/src/gpu/GrPathUtils.cpp b/src/gpu/GrPathUtils.cpp index 9a79f2061e..0089fc1703 100644 --- a/src/gpu/GrPathUtils.cpp +++ b/src/gpu/GrPathUtils.cpp @@ -167,7 +167,7 @@ int GrPathUtils::worstCasePointCount(const SkPath& path, int* subpaths, SkScalar SkPath::Verb verb; SkPoint pts[4]; - while ((verb = iter.next(pts)) != SkPath::kDone_Verb) { + while ((verb = iter.next(pts, false)) != SkPath::kDone_Verb) { switch (verb) { case SkPath::kLine_Verb: diff --git a/src/gpu/GrTessellator.cpp b/src/gpu/GrTessellator.cpp index 2cb9adcbf8..a77f23d708 100644 --- a/src/gpu/GrTessellator.cpp +++ b/src/gpu/GrTessellator.cpp @@ -711,7 +711,7 @@ void path_to_contours(const SkPath& path, SkScalar tolerance, const SkRect& clip } SkAutoConicToQuads converter; SkPath::Verb verb; - while ((verb = iter.next(pts)) != SkPath::kDone_Verb) { + while ((verb = iter.next(pts, false)) != SkPath::kDone_Verb) { switch (verb) { case SkPath::kConic_Verb: { SkScalar weight = iter.conicWeight(); diff --git a/src/gpu/ops/GrDefaultPathRenderer.cpp b/src/gpu/ops/GrDefaultPathRenderer.cpp index 4a436aa04b..e3b48a8db9 100644 --- a/src/gpu/ops/GrDefaultPathRenderer.cpp +++ b/src/gpu/ops/GrDefaultPathRenderer.cpp @@ -148,7 +148,7 @@ public: bool done = false; while (!done) { - SkPath::Verb verb = iter.next(pts); + SkPath::Verb verb = iter.next(pts, false); switch (verb) { case SkPath::kMove_Verb: this->moveTo(pts[0]); |