From c7a2de6aac6e8aefbc662be4c177d1a76b51bf33 Mon Sep 17 00:00:00 2001 From: Kevin Lubick Date: Wed, 21 Mar 2018 13:35:14 -0400 Subject: [skia] port two more canvas fuzzers (#1261) --- projects/skia/BUILD.gn.diff | 50 +++++++++++++++++++++++++++++++++++++++++++++ projects/skia/Dockerfile | 4 ++++ projects/skia/build.sh | 12 +++++++++-- 3 files changed, 64 insertions(+), 2 deletions(-) diff --git a/projects/skia/BUILD.gn.diff b/projects/skia/BUILD.gn.diff index 578b218a..97be1e37 100644 --- a/projects/skia/BUILD.gn.diff +++ b/projects/skia/BUILD.gn.diff @@ -144,3 +144,53 @@ test_app("api_path_measure") { ":skia", ] } + +test_app("api_raster_n32_canvas") { + include_dirs = [ + "tools", + "tools/debugger", + ] + sources = [ + "fuzz/FuzzCanvas.cpp", + "fuzz/FuzzCommon.cpp", + "fuzz/oss_fuzz/FuzzRasterN32Canvas.cpp", + "tools/UrlDataManager.cpp", + "tools/debugger/SkDebugCanvas.cpp", + "tools/debugger/SkDrawCommand.cpp", + "tools/debugger/SkJsonWriteBuffer.cpp", + "tools/debugger/SkObjectParser.cpp", + "tools/picture_utils.cpp", + ] + deps = [ + ":flags", + ":gpu_tool_utils", + ":skia", + "//third_party/jsoncpp", + "//third_party/libpng", + ] +} + +test_app("api_null_canvas") { + include_dirs = [ + "tools", + "tools/debugger", + ] + sources = [ + "fuzz/FuzzCanvas.cpp", + "fuzz/FuzzCommon.cpp", + "fuzz/oss_fuzz/FuzzNullCanvas.cpp", + "tools/UrlDataManager.cpp", + "tools/debugger/SkDebugCanvas.cpp", + "tools/debugger/SkDrawCommand.cpp", + "tools/debugger/SkJsonWriteBuffer.cpp", + "tools/debugger/SkObjectParser.cpp", + "tools/picture_utils.cpp", + ] + deps = [ + ":flags", + ":gpu_tool_utils", + ":skia", + "//third_party/jsoncpp", + "//third_party/libpng", + ] +} \ No newline at end of file diff --git a/projects/skia/Dockerfile b/projects/skia/Dockerfile index 550af184..eb255293 100644 --- a/projects/skia/Dockerfile +++ b/projects/skia/Dockerfile @@ -50,6 +50,8 @@ RUN wget -O $SRC/skia/api_image_filter_seed_corpus.zip https://storage.googleapi RUN wget -O $SRC/skia/api_path_measure_seed_corpus.zip https://storage.googleapis.com/skia-fuzzer/oss-fuzz/api_path_measure_seed_corpus.zip +RUN wget -O $SRC/skia/canvas_seed_corpus.zip https://storage.googleapis.com/skia-fuzzer/oss-fuzz/canvas_seed_corpus.zip + COPY build.sh $SRC/ COPY skia.diff $SRC/skia/skia.diff @@ -69,6 +71,8 @@ COPY api_fuzzers.options $SRC/skia/api_draw_functions.options COPY api_fuzzers.options $SRC/skia/api_gradients.options COPY api_fuzzers.options $SRC/skia/api_image_filter.options COPY api_fuzzers.options $SRC/skia/api_path_measure.options +COPY api_fuzzers.options $SRC/skia/api_raster_n32_canvas.options +COPY api_fuzzers.options $SRC/skia/api_null_canvas.options COPY BUILD.gn.diff $SRC/skia/BUILD.gn.diff RUN cat BUILD.gn.diff >> BUILD.gn diff --git a/projects/skia/build.sh b/projects/skia/build.sh index cf7453ac..ff9cfed6 100644 --- a/projects/skia/build.sh +++ b/projects/skia/build.sh @@ -49,7 +49,7 @@ $SRC/depot_tools/ninja -C out/Fuzz_mem_constraints image_filter_deserialize \ $SRC/depot_tools/ninja -C out/Fuzz region_deserialize region_set_path \ path_deserialize image_decode animated_image_decode \ api_draw_functions api_gradients api_image_filter \ - api_path_measure + api_path_measure api_raster_n32_canvas api_null_canvas cp out/Fuzz/region_deserialize $OUT/region_deserialize cp ./region_deserialize.options $OUT/region_deserialize.options @@ -103,4 +103,12 @@ cp ./api_image_filter_seed_corpus.zip $OUT/api_image_filter_seed_corpus.zip cp out/Fuzz/api_path_measure $OUT/api_path_measure cp ./api_path_measure.options $OUT/api_path_measure.options -cp ./api_path_measure_seed_corpus.zip $OUT/api_path_measure_seed_corpus.zip \ No newline at end of file +cp ./api_path_measure_seed_corpus.zip $OUT/api_path_measure_seed_corpus.zip + +cp out/Fuzz/api_raster_n32_canvas $OUT/api_raster_n32_canvas +cp ./api_raster_n32_canvas.options $OUT/api_raster_n32_canvas.options +cp ./canvas_seed_corpus.zip $OUT/api_raster_n32_canvas_seed_corpus.zip + +cp out/Fuzz/api_null_canvas $OUT/api_null_canvas +cp ./api_null_canvas.options $OUT/api_null_canvas.options +cp ./canvas_seed_corpus.zip $OUT/api_null_canvas_seed_corpus.zip \ No newline at end of file -- cgit v1.2.3