diff options
author | Kevin Lubick <kjlubick@google.com> | 2018-03-21 10:17:25 -0400 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2018-03-21 14:44:28 +0000 |
commit | 486ee3d4c633b143e5aea8898b277be563cd2cd9 (patch) | |
tree | cd2f49e85c635600fdcd636a121637b78c290a19 /fuzz | |
parent | d1d52562dd8fece9c27219830424a89606ff3eba (diff) |
Port 2 Canvas fuzzers to oss-fuzz
Bug: skia:
Change-Id: I0d34bfff4a53f831986614844bdc955935f28501
Reviewed-on: https://skia-review.googlesource.com/115582
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Diffstat (limited to 'fuzz')
-rw-r--r-- | fuzz/FuzzCanvas.cpp | 5 | ||||
-rw-r--r-- | fuzz/oss_fuzz/FuzzNullCanvas.cpp | 16 | ||||
-rw-r--r-- | fuzz/oss_fuzz/FuzzRasterN32Canvas.cpp | 16 |
3 files changed, 34 insertions, 3 deletions
diff --git a/fuzz/FuzzCanvas.cpp b/fuzz/FuzzCanvas.cpp index 0180809a70..c7f141979b 100644 --- a/fuzz/FuzzCanvas.cpp +++ b/fuzz/FuzzCanvas.cpp @@ -1703,12 +1703,11 @@ DEF_FUZZ(NullCanvas, fuzz) { fuzz_canvas(fuzz, SkMakeNullCanvas().get()); } -// 8.5x11 letter paper at 72ppi. -constexpr SkISize kCanvasSize = {612, 792}; +constexpr SkISize kCanvasSize = {128, 160}; DEF_FUZZ(RasterN32Canvas, fuzz) { auto surface = SkSurface::MakeRasterN32Premul(kCanvasSize.width(), kCanvasSize.height()); - SkASSERT(surface && surface->getCanvas()); + if (!surface || !surface->getCanvas()) { fuzz->signalBug(); } fuzz_canvas(fuzz, surface->getCanvas()); } diff --git a/fuzz/oss_fuzz/FuzzNullCanvas.cpp b/fuzz/oss_fuzz/FuzzNullCanvas.cpp new file mode 100644 index 0000000000..37f32881a9 --- /dev/null +++ b/fuzz/oss_fuzz/FuzzNullCanvas.cpp @@ -0,0 +1,16 @@ +/* + * Copyright 2018 Google, LLC + * + * Use of this source code is governed by a BSD-style license that can be + * found in the LICENSE file. + */ + +#include "../Fuzz.h" + +void fuzz_NullCanvas(Fuzz* f); + +extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) { + auto fuzz = Fuzz(SkData::MakeWithoutCopy(data, size)); + fuzz_NullCanvas(&fuzz); + return 0; +} diff --git a/fuzz/oss_fuzz/FuzzRasterN32Canvas.cpp b/fuzz/oss_fuzz/FuzzRasterN32Canvas.cpp new file mode 100644 index 0000000000..24d74a5cd6 --- /dev/null +++ b/fuzz/oss_fuzz/FuzzRasterN32Canvas.cpp @@ -0,0 +1,16 @@ +/* + * Copyright 2018 Google, LLC + * + * Use of this source code is governed by a BSD-style license that can be + * found in the LICENSE file. + */ + +#include "../Fuzz.h" + +void fuzz_RasterN32Canvas(Fuzz* f); + +extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) { + auto fuzz = Fuzz(SkData::MakeWithoutCopy(data, size)); + fuzz_RasterN32Canvas(&fuzz); + return 0; +} |