diff options
author | caryclark <caryclark@google.com> | 2016-09-22 10:24:59 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-09-22 10:24:59 -0700 |
commit | bac104605ef3d9a8ed0022694990f00518b809e9 (patch) | |
tree | ef64ee5043762606de08fde3da60b39777c3bc22 /tests/PathTest.cpp | |
parent | 08b345588414b861af8a55950e7dc21a1bd85a28 (diff) |
Reland of ix for conic fuzz (patchset #1 id:1 of https://codereview.chromium.org/2361473004/ )
Reason for revert:
Landed suppression in Chrome's LayoutTests/TestExpectations
Original issue's description:
> Revert of fix for conic fuzz (patchset #3 id:40001 of https://codereview.chromium.org/2350263003/ )
>
> Reason for revert:
> See if this fixes the layout tests.
>
> Original issue's description:
> > fix for conic fuzz
> >
> > A fuzzer generates a conic that hangs when drawn.
> > The quads that approximate the conics move up and down
> > in y, confusing the renderer.
> >
> > This fix ensures that the split conic maintains the
> > same y direction as the original conic.
> >
> > R=reed@google.com
> > BUG=647922
> > GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2350263003
> >
> > Committed: https://skia.googlesource.com/skia/+/ac78863acdef4b428aaf66985b80c76d1be0fdea
>
> TBR=reed@google.com
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=647922
>
> Committed: https://skia.googlesource.com/skia/+/08b345588414b861af8a55950e7dc21a1bd85a28
TBR=reed@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=647922
Review-Url: https://codereview.chromium.org/2359253002
Diffstat (limited to 'tests/PathTest.cpp')
-rw-r--r-- | tests/PathTest.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/tests/PathTest.cpp b/tests/PathTest.cpp index 483d14ec48..99a4e5b5af 100644 --- a/tests/PathTest.cpp +++ b/tests/PathTest.cpp @@ -157,6 +157,19 @@ static void test_fuzz_crbug_643933() { canvas->drawPath(path, paint); } +static void test_fuzz_crbug_647922() { + auto surface(SkSurface::MakeRasterN32Premul(250, 250)); + SkCanvas* canvas = surface->getCanvas(); + SkPaint paint; + paint.setAntiAlias(true); + SkPath path; + path.moveTo(0, 0); + path.conicTo(SkBits2Float(0x00003939), SkBits2Float(0x42487fff), // 2.05276e-41f, 50.125f + SkBits2Float(0x48082361), SkBits2Float(0x4408e8e9), // 139406, 547.639f + SkBits2Float(0x4d1ade0f)); // 1.6239e+08f + canvas->drawPath(path, paint); +} + /** * In debug mode, this path was causing an assertion to fail in * SkPathStroker::preJoinTo() and, in Release, the use of an unitialized value. @@ -4275,6 +4288,7 @@ DEF_TEST(PathContains, reporter) { } DEF_TEST(Paths, reporter) { + test_fuzz_crbug_647922(); test_fuzz_crbug_643933(); test_sect_with_horizontal_needs_pinning(); test_crbug_629455(reporter); |