aboutsummaryrefslogtreecommitdiffhomepage
path: root/tests/DashPathEffectTest.cpp
diff options
context:
space:
mode:
authorGravatar caryclark <caryclark@google.com>2016-01-29 09:54:20 -0800
committerGravatar Commit bot <commit-bot@chromium.org>2016-01-29 09:54:20 -0800
commit703348f5fac69dbedf22cda2ce264d2c9683bcf3 (patch)
tree2d8dffcb9a19873ec2593098ffdc999f05e32526 /tests/DashPathEffectTest.cpp
parentf2b340fc885ad2a12d2d73974eff9c8f4c94192c (diff)
fix teeny dashed path bug
If the path dashed is sufficiently small, there may be no segments generated to dash. Check for an empty segment list. R=reed@google.com BUG=skia:4871 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1645613006 Review URL: https://codereview.chromium.org/1645613006
Diffstat (limited to 'tests/DashPathEffectTest.cpp')
-rw-r--r--tests/DashPathEffectTest.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/tests/DashPathEffectTest.cpp b/tests/DashPathEffectTest.cpp
index f55bcf8a85..68fce9a142 100644
--- a/tests/DashPathEffectTest.cpp
+++ b/tests/DashPathEffectTest.cpp
@@ -87,3 +87,20 @@ DEF_TEST(DashPathEffectTest_asPoints, r) {
}
}
}
+
+DEF_TEST(DashPath_bug4871, r) {
+ SkPath path;
+ path.moveTo(30, 24);
+ path.cubicTo(30.002f, 24, 30, 24, 30, 24);
+ path.close();
+
+ SkScalar intervals[2] = { 1, 1 };
+ SkAutoTUnref<SkPathEffect> dash(SkDashPathEffect::Create(intervals, 2, 0));
+
+ SkPaint paint;
+ paint.setStyle(SkPaint::kStroke_Style);
+ paint.setPathEffect(dash);
+
+ SkPath fill;
+ paint.getFillPath(path, &fill);
+}