aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--gm/strokefill.cpp16
-rw-r--r--src/gpu/GrPathUtils.cpp2
-rw-r--r--src/gpu/GrTessellator.cpp2
-rw-r--r--src/gpu/ops/GrDefaultPathRenderer.cpp2
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]);