aboutsummaryrefslogtreecommitdiffhomepage
path: root/tests/PathTest.cpp
diff options
context:
space:
mode:
authorGravatar reed <reed@google.com>2016-07-20 10:06:59 -0700
committerGravatar Commit bot <commit-bot@chromium.org>2016-07-20 10:06:59 -0700
commit158fabb071f2cb275bc88c139e88e8eb3bf140ee (patch)
treebdb0a34b1bd54f38df6ec4835cdbc879423dc9b7 /tests/PathTest.cpp
parent1f790aaeef47b02fe72b9b62d1e8c7ead85ae442 (diff)
re-chop if we fail on a big-bad-cubic
Diffstat (limited to 'tests/PathTest.cpp')
-rw-r--r--tests/PathTest.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/tests/PathTest.cpp b/tests/PathTest.cpp
index 44b6786019..8f98e6abaa 100644
--- a/tests/PathTest.cpp
+++ b/tests/PathTest.cpp
@@ -4129,6 +4129,21 @@ public:
}
};
+static void test_crbug_629455(skiatest::Reporter* reporter) {
+ SkPath path;
+ path.moveTo(0, 0);
+ path.cubicTo(SkBits2Float(0xcdcdcd00), SkBits2Float(0xcdcdcdcd),
+ SkBits2Float(0xcdcdcdcd), SkBits2Float(0xcdcdcdcd),
+ SkBits2Float(0x423fcdcd), SkBits2Float(0x40ed9341));
+// AKA: cubicTo(-4.31596e+08f, -4.31602e+08f, -4.31602e+08f, -4.31602e+08f, 47.951f, 7.42423f);
+ path.lineTo(0, 0);
+
+ auto surface = SkSurface::MakeRasterN32Premul(100, 100);
+ SkPaint paint;
+ paint.setAntiAlias(true);
+ surface->getCanvas()->drawPath(path, paint);
+}
+
static void test_interp(skiatest::Reporter* reporter) {
SkPath p1, p2, out;
REPORTER_ASSERT(reporter, p1.isInterpolatable(p2));
@@ -4177,6 +4192,7 @@ DEF_TEST(PathContains, reporter) {
}
DEF_TEST(Paths, reporter) {
+ test_crbug_629455(reporter);
test_fuzz_crbug_627414(reporter);
test_path_crbug364224();