aboutsummaryrefslogtreecommitdiffhomepage
path: root/fuzz
Commit message (Collapse)AuthorAge
* Revert "Revert "SkTypes: extract SkTo""Gravatar Hal Canary2018-06-14
| | | | | | | | | | | | | | | | This reverts commit fdcfb8b7c23fbf18f872d2c31d27978235033876. > Original change's description: > > SkTypes: extract SkTo > > > > Change-Id: I8de790d5013db2105ad885fa2683303d7c250b09 > > Reviewed-on: https://skia-review.googlesource.com/133620 > > Reviewed-by: Mike Klein <mtklein@google.com> Change-Id: Ida74fbc5c21248a724a5edbf9fae18a33bcb23aa Reviewed-on: https://skia-review.googlesource.com/134506 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Hal Canary <halcanary@google.com>
* Revert "SkTypes: extract SkTo"Gravatar Hal Canary2018-06-13
| | | | | | | | | | | | | | | | | | | | | | | This reverts commit 2a2f67592602b18527bc3fd449132d420cd5b62e. Reason for revert: this appears to be what is holding up the Chrome roll. Original change's description: > SkTypes: extract SkTo > > Change-Id: I8de790d5013db2105ad885fa2683303d7c250b09 > Reviewed-on: https://skia-review.googlesource.com/133620 > Reviewed-by: Mike Klein <mtklein@google.com> TBR=mtklein@google.com,halcanary@google.com No-Presubmit: true No-Tree-Checks: true No-Try: true Change-Id: Iafd738aedfb679a23c061a51afe4b98a8d4cdfae Reviewed-on: https://skia-review.googlesource.com/134504 Reviewed-by: Hal Canary <halcanary@google.com> Commit-Queue: Hal Canary <halcanary@google.com>
* SkTypes: extract SkToGravatar Hal Canary2018-06-12
| | | | | | Change-Id: I8de790d5013db2105ad885fa2683303d7c250b09 Reviewed-on: https://skia-review.googlesource.com/133620 Reviewed-by: Mike Klein <mtklein@google.com>
* clean up SkPicture includeGravatar Cary Clark2018-06-12
| | | | | | | | | | | | | | | | | Get SkPicture.h ready for documenting. - remove private methods - move private forward declarations - name parameters R=reed@google.com, bsalomon@google.com Bug: skia:6898 Change-Id: I28829111203d8ae2a4661cf02c99023403aa0df0 Reviewed-on: https://skia-review.googlesource.com/134120 Reviewed-by: Brian Salomon <bsalomon@google.com> Reviewed-by: Cary Clark <caryclark@skia.org> Commit-Queue: Cary Clark <caryclark@google.com>
* Clean up a few IWYU issuesGravatar Mike Klein2018-06-11
| | | | | | | | | Spun off from the SkTFitsIn CL. Change-Id: I686d680df6a36ebc02db3847ad5e2cedcbcd67ef Reviewed-on: https://skia-review.googlesource.com/134083 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* SkJsonGravatar Florin Malita2018-06-08
| | | | | | | | | | | | | | | | For now this is only wired to a bench and a couple of tests. Local numbers, for a ~500KB BM "compressed" json: micros bench 2456.54 json_rapidjson nonrendering 1192.38 json_skjson nonrendering Change-Id: I7b3514f84c7c525d1787722c43ad6095e3692563 Reviewed-on: https://skia-review.googlesource.com/127622 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Florin Malita <fmalita@chromium.org>
* More libfuzzer cleanups from GPU switchoverGravatar Kevin Lubick2018-06-07
| | | | | | | | | | | This was breaking the oss-fuzz build as is. Bug: oss-fuzz:8701 Change-Id: I23ad21816a293356c91cd3bbc6276b2ed3ceafe6 Reviewed-on: https://skia-review.googlesource.com/132822 Commit-Queue: Kevin Lubick <kjlubick@google.com> Auto-Submit: Kevin Lubick <kjlubick@google.com> Reviewed-by: Mike Klein <mtklein@google.com>
* Add Dockerfile for building and running local Skia checkout with SwiftShaderGravatar Kevin Lubick2018-06-06
| | | | | | | | | | | | | | | | | | | | | | This also adds a little helper to fuzz that allows us to see what GPU is being targeted. This is the first step in getting a SwiftShader fuzz target. To prove that this works, simply download this patch and run: ./docker/skia-with-swift-shader-base/build-with-swift-shader-and-run "out/with-swift-shader/fuzz --gpuInfo -t api -n NativeGLCanvas -b out/with-swift-shader/fiddle" Running supplied command ['out/with-swift-shader/fuzz', '--gpuInfo', '-t', 'api', '-n', 'NativeGLCanvas', '-b', 'out/with-swift-shader/fiddle'] Fuzzing NativeGLCanvas... GL_RENDERER Google SwiftShader GL_VENDOR Google Inc. GL_VERSION OpenGL ES 3.0 SwiftShader 4.0.0.6 Bug: skia: Change-Id: I3cc11a6bcd14f70f6025011722f9a73c94cb1f65 Reviewed-on: https://skia-review.googlesource.com/132269 Reviewed-by: Joe Gregorio <jcgregorio@google.com> Commit-Queue: Kevin Lubick <kjlubick@google.com>
* Add fuzzer option for Blur w/o occluderGravatar Kevin Lubick2018-06-06
| | | | | | | | | | | I hypothesize that some backends look at the occluder and may have accidentally (on purpose) been avoiding the linked bug. Bug: skia:7956 Change-Id: If8d1de099f778b2faaa2c5ed4c562047b0dd14e7 Reviewed-on: https://skia-review.googlesource.com/131922 Commit-Queue: Kevin Lubick <kjlubick@google.com> Reviewed-by: Hal Canary <halcanary@google.com>
* Add option for fuzzer to toggle DAAGravatar Kevin Lubick2018-06-01
| | | | | | | | | | | | | | | | Of note, this is a breaking change to the fuzzed format for any canvas fuzzers. I've updated the seed corpora to match but any repro cases predating this will need to have the a single byte added to the front of the test case: echo -n -e '\x00' | cat - file > outputfile Bug: 847386 Change-Id: I10b3b228e9c121340857fb8e7807464e54e9238a Reviewed-on: https://skia-review.googlesource.com/131522 Auto-Submit: Kevin Lubick <kjlubick@google.com> Reviewed-by: Yuqian Li <liyuqian@google.com>
* Fix fuzz+Skottie integrationGravatar Kevin Lubick2018-05-29
| | | | | | | | Bug: skia: Change-Id: Ic926f6a838ac1e6d358d51913dc5c58d3083274a Reviewed-on: https://skia-review.googlesource.com/130480 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Kevin Lubick <kjlubick@google.com>
* [skottie] Relocate to modules/skottieGravatar Florin Malita2018-05-27
| | | | | | | | TBR= Change-Id: I218d251ca56578a3a7fd4fb86cba9abdc10fb3bd Reviewed-on: https://skia-review.googlesource.com/130322 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Florin Malita <fmalita@chromium.org>
* remove SkColorSpace::MakeICC() fuzzerGravatar Mike Klein2018-05-23
| | | | | | | | | | | We're removing SkColorSpace::MakeICC() and replacing it with skcms. The equivalent skcms_Parse() is already fuzzed. Change-Id: Ic5c8f8c71976859b9892fdc6991aea90dac04eff Reviewed-on: https://skia-review.googlesource.com/129652 Auto-Submit: Mike Klein <mtklein@chromium.org> Commit-Queue: Kevin Lubick <kjlubick@google.com> Reviewed-by: Kevin Lubick <kjlubick@google.com>
* Fix FuzzCanvas - drawPathGravatar Kevin Lubick2018-05-22
| | | | | | | | | | | | Without this, our fuzzer would not be able to find https://bugs.chromium.org/p/chromium/issues/detail?id=844457 on its own. Bug: skia: Change-Id: I61146242e9eca29821d13abfd6f777df2199df97 Reviewed-on: https://skia-review.googlesource.com/129502 Reviewed-by: Kevin Lubick <kjlubick@google.com> Commit-Queue: Kevin Lubick <kjlubick@google.com>
* Fuzz should observe the optional Skottie flag.Gravatar Florin Malita2018-05-04
| | | | | | | | Change-Id: I41d79442559bc020ac786f668534f5a2990cc96f Reviewed-on: https://skia-review.googlesource.com/126121 Auto-Submit: Florin Malita <fmalita@chromium.org> Reviewed-by: Kevin Lubick <kjlubick@google.com> Commit-Queue: Florin Malita <fmalita@chromium.org>
* Add Skottie fuzzer (via json input)Gravatar Kevin Lubick2018-05-04
| | | | | | | | Bug: skia: Change-Id: I97543b73755fca73f2ad014113ae8cd2c9227cf3 Reviewed-on: https://skia-review.googlesource.com/125820 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Kevin Lubick <kjlubick@google.com>
* IWYU for fuzz binaryGravatar Kevin Lubick2018-04-24
| | | | | | | | | | Bug: skia: Change-Id: I6d04fad4d5089c97761d6082b6c39f047e90fd52 Reviewed-on: https://skia-review.googlesource.com/123223 Commit-Queue: Kevin Lubick <kjlubick@google.com> Commit-Queue: Stan Iliev <stani@google.com> Auto-Submit: Kevin Lubick <kjlubick@google.com> Reviewed-by: Stan Iliev <stani@google.com>
* Make fuzz autodetect file namesGravatar Kevin Lubick2018-04-24
| | | | | | | | | | | e.g. out/ASAN/fuzz -b /path/to/file Bug: skia: Change-Id: I6df370a7f83e8ea8fc8c2dec20834620bc726911 Reviewed-on: https://skia-review.googlesource.com/122901 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Kevin Lubick <kjlubick@google.com>
* rm SkRRectsGaussianEdgeMaskFilterGravatar Robert Phillips2018-04-19
| | | | | | | | | Neat but unused. Change-Id: I1b2d160df274b05cfb5582a5385085cc2db89f7d Reviewed-on: https://skia-review.googlesource.com/121960 Reviewed-by: Jim Van Verth <jvanverth@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Remove scanlineOrder switch statements that always do the same thingGravatar Brian Osman2018-04-06
| | | | | | | | | | I think these date back to GIF codec having a third value of this enum that meant "interlaced" ? Change-Id: Iaff11a55ad3cff44da2307149991a22447dfe746 Reviewed-on: https://skia-review.googlesource.com/119146 Reviewed-by: Leon Scroggins <scroggo@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Region Op FuzzerGravatar Hal Canary2018-04-06
| | | | | | | | | | | Also: assert Region IRects don't contain Sentinel value. Also: Region fuzzer can't produce Sentinel value. Change-Id: Ia33c7eeb9ef2c46b3da4a025d85de8a0406c3c0c Reviewed-on: https://skia-review.googlesource.com/119011 Reviewed-by: Kevin Lubick <kjlubick@google.com> Reviewed-by: Cary Clark <caryclark@google.com> Commit-Queue: Hal Canary <halcanary@google.com>
* Avoid nonsortable rects in drawRect/drawOvalGravatar Kevin Lubick2018-04-05
| | | | | | | | Bug: skia: Change-Id: Ia369a8f562c33e43248460076e8b6464add849a5 Reviewed-on: https://skia-review.googlesource.com/118980 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Kevin Lubick <kjlubick@google.com>
* Move oss-fuzz to MockGPUCanvasGravatar Kevin Lubick2018-04-03
| | | | | | | | | | Bug: skia:7776 Change-Id: I4f2791375d8be05486d10ce8f7f2e58aa032cfd8 Reviewed-on: https://skia-review.googlesource.com/118166 Commit-Queue: Kevin Lubick <kjlubick@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com> Reviewed-by: Mike Klein <mtklein@google.com> Reviewed-by: Jonathan Metzman <metzman@chromium.org>
* Add mock gl fuzzerGravatar Kevin Lubick2018-04-02
| | | | | | | | Bug: skia: Change-Id: I661eed3cdddba67aadfff5b3fe7b96ac29180c61 Reviewed-on: https://skia-review.googlesource.com/117637 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Kevin Lubick <kjlubick@google.com>
* Add Encoder fuzzersGravatar Kevin Lubick2018-03-30
| | | | | | | | | | | | | | | This also includes a helper "fuzzer" for making a corpus. Point it at an image or folder of images and it will decode those images and write the SkPixmap's bytes to disk, such that the fuzzer will be able to read in those bytes as if it had decoded the image (or gotten it from another source). Bug: skia: Change-Id: Iaf223a39078f2b62908fb47929add5d63f22d973 Reviewed-on: https://skia-review.googlesource.com/117367 Reviewed-by: Leon Scroggins <scroggo@google.com> Commit-Queue: Kevin Lubick <kjlubick@google.com>
* Add libFuzzer style fuzzer for NullGLCanvas for use on OSS-Fuzz.Gravatar Jonathan Metzman2018-03-29
| | | | | | | | Bug: 827225 Change-Id: Icb30c0c234326340213af0cc402a4124dd0336b3 Reviewed-on: https://skia-review.googlesource.com/117150 Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Port 2 Canvas fuzzers to oss-fuzzGravatar Kevin Lubick2018-03-21
| | | | | | | | 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>
* hide SkBlurMaskFilter and SkBlurQualityGravatar Mike Reed2018-03-14
| | | | | | | | | | SK_SUPPORT_LEGACY_BLURMASKFILTER Bug: skia: Change-Id: Ic3e27e08e6e3cd2ffc1cd13b044e197bebc96236 Reviewed-on: https://skia-review.googlesource.com/113940 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Florin Malita <fmalita@chromium.org>
* Add oss-fuzz endpoint for PathMeasureGravatar Kevin Lubick2018-03-12
| | | | | | | | Bug: skia: Change-Id: I3e051cefd6861b63bab33a1812674eacf67a35dd Reviewed-on: https://skia-review.googlesource.com/113748 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Kevin Lubick <kjlubick@google.com>
* pathmeasure fuzzerGravatar Cary Clark2018-03-12
| | | | | | | | | | R=kjlubick@google.com, reed@google.com Bug: skia: Change-Id: I16a8b09312e5d1d1783bd6a4b791636ad8f63889 Reviewed-on: https://skia-review.googlesource.com/113165 Reviewed-by: Mike Reed <reed@google.com> Reviewed-by: Kevin Lubick <kjlubick@google.com> Commit-Queue: Cary Clark <caryclark@skia.org>
* Fix a tiny typoGravatar Yuqian Li2018-03-01
| | | | | | | | | | This shouldn't matter... But I just feel the impulsion to fix it. Bug: skia: Change-Id: Id3b6302071165b3abe98a3d89409d39715fac23c Reviewed-on: https://skia-review.googlesource.com/111002 Commit-Queue: Kevin Lubick <kjlubick@google.com> Reviewed-by: Kevin Lubick <kjlubick@google.com>
* Tweak API fuzzers to run better in libfuzzerGravatar Kevin Lubick2018-02-27
| | | | | | | | | | | Prevents logging from cluttering the stats. Better handles limited memory. Bug: skia: Change-Id: I12c1a46875fd9120938cab520ef70de69c451ad8 Reviewed-on: https://skia-review.googlesource.com/110642 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Kevin Lubick <kjlubick@google.com>
* Port 3 API fuzzers to be oss-fuzz friendlyGravatar Kevin Lubick2018-02-27
| | | | | | | | | | Also Remove ScaleToSides, which we hadn't been running for a while. Bug: skia: Change-Id: I772dad722c34681392d5b635b3de716f3b00d597 Reviewed-on: https://skia-review.googlesource.com/110443 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Kevin Lubick <kjlubick@google.com>
* Add guidance for oss-fuzzer for new path versionGravatar Kevin Lubick2018-02-23
| | | | | | | | | | | | | | | | This only changes it for the oss-fuzz executable which allows our normal fuzz executable to repro on older versions, if needed. This CL also accompanies additions to the corpus of a bunch of v4 paths. Bug: skia: Change-Id: I4a1a3b27f48423f2bddc73e1b8bf63b82dfa59ff Reviewed-on: https://skia-review.googlesource.com/109560 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Kevin Lubick <kjlubick@google.com>
* Check for null colorFilter in FuzzCanvasGravatar Kevin Lubick2018-02-21
| | | | | | | | | | Follow up to https://skia-review.googlesource.com/c/skia/+/108300 Bug: skia: Change-Id: I1b8b6ff71c71388660e09b3a7e8c77a40b1a1d12 Reviewed-on: https://skia-review.googlesource.com/108960 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Kevin Lubick <kjlubick@google.com>
* hide virtual and rename to onMakeComposedGravatar Mike Reed2018-02-19
| | | | | | | | Bug: skia: Change-Id: Ic18ee2af3273f81ebec9c9031162e808186c0acd Reviewed-on: https://skia-review.googlesource.com/108300 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Add 2 fuzz targets for image decoding (oss-fuzz)Gravatar Kevin Lubick2018-02-12
| | | | | | | | | | | This also adds in a few small guards to prevent libfuzzer from frequently running out of memory when an image claims to have billions of pixels. Bug: skia: Change-Id: I47a9daac832c4d85a42000698482b61721c38880 Reviewed-on: https://skia-review.googlesource.com/106264 Commit-Queue: Kevin Lubick <kjlubick@google.com> Reviewed-by: Leon Scroggins <scroggo@google.com>
* Break some fuzzer targets out so oss-fuzz can use themGravatar Kevin Lubick2018-02-09
| | | | | | | | | | | | | | | | FuzzImageFilterDeserialize is already being used in oss-fuzz but the target lived there and not here. This moves it here. Then we can turn on: - FuzzPathDeserialize - FuzzTextBlobDeserialize Bug: skia: Change-Id: I7baee8386fb7aeebc43a68abfff9a670ba16f82c Reviewed-on: https://skia-review.googlesource.com/105763 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Kevin Lubick <kjlubick@google.com>
* Reland "remove SkCanvas::kIsOpaque_SaveLayerFlag"Gravatar Mike Klein2018-02-07
| | | | | | | | | | | | | | | | | | | | | | | This reverts the revert 9ff8c8c073ba553dc8b22bb9aacc23949292f72f. Original: This is a performance-only hint that no one but fuzzers is using. It's even explicitly filtered out in Android. The fuzzers have noticed they can trick us into allocating uninitialized memory and treating it as opaque, blending uninitialized pixels, etc. Since no one's using this, we can just kill the bit. Bug: skia:7566, chromium:808830 Docs-Preview: https://skia.org/?cl=105282 Change-Id: I4326c663f777aa373ff7ec9f319519da9729350d Reviewed-on: https://skia-review.googlesource.com/105282 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Revert "remove SkCanvas::kIsOpaque_SaveLayerFlag"Gravatar Mike Klein2018-02-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 9a7a2ee5ad8453a985d7d76c1e0ebb50d17fec63. Reason for revert: still need to update blink_headless in Google3 Original change's description: > remove SkCanvas::kIsOpaque_SaveLayerFlag > > This is a performance-only hint that no one but fuzzers > is using. It's even explicitly filtered out in Android. > > The fuzzers have noticed they can trick us into allocating > uninitialized memory and treating it as opaque, blending > uninitialized pixels, etc. > > Since no one's using this, we can just kill the bit. > > Bug: skia:7566, chromium:808830 > > Change-Id: Id74a85e51bc4d0907b4127eb9ac5b02576f8f0a7 > Reviewed-on: https://skia-review.googlesource.com/104441 > Reviewed-by: Mike Reed <reed@google.com> > Commit-Queue: Mike Klein <mtklein@chromium.org> TBR=mtklein@chromium.org,fmalita@chromium.org,reed@google.com Change-Id: I10d3c7e5184b9322715a5bfb6a7106292c8876a3 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia:7566, chromium:808830 Reviewed-on: https://skia-review.googlesource.com/104781 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Mike Klein <mtklein@google.com>
* remove SkCanvas::kIsOpaque_SaveLayerFlagGravatar Mike Klein2018-02-07
| | | | | | | | | | | | | | | | | | This is a performance-only hint that no one but fuzzers is using. It's even explicitly filtered out in Android. The fuzzers have noticed they can trick us into allocating uninitialized memory and treating it as opaque, blending uninitialized pixels, etc. Since no one's using this, we can just kill the bit. Bug: skia:7566, chromium:808830 Change-Id: Id74a85e51bc4d0907b4127eb9ac5b02576f8f0a7 Reviewed-on: https://skia-review.googlesource.com/104441 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Check for nullptrs when fuzzing region_deserializeGravatar Kevin Lubick2018-02-01
| | | | | | | | Bug: oss-fuzz:5629 Change-Id: I1129a6a9a68c69e07ab63e2e2be1c00cf0581962 Reviewed-on: https://skia-review.googlesource.com/102482 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Kevin Lubick <kjlubick@google.com>
* remove unneeded SkFlattenableSerializationGravatar Mike Reed2018-01-23
| | | | | | | | | Bug: skia: Change-Id: I5cf40b88b05dcd8e83383f6271b046eac8d55e35 Reviewed-on: https://skia-review.googlesource.com/98642 Reviewed-by: Mike Reed <reed@google.com> Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Mike Reed <reed@google.com>
* remove unused SkRasterizerGravatar Mike Reed2018-01-21
| | | | | | | | Bug: skia:7500 Change-Id: Iaa683cf8f0b18887cce4ec676631d1e1efee1712 Reviewed-on: https://skia-review.googlesource.com/97400 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Mike Reed <reed@google.com>
* check for crazy bounds from fuzzerGravatar Mike Reed2018-01-19
| | | | | | | | Bug: skia:7471 Change-Id: I1d6e2059a0c4f2b705d3b0fe2694f17b68c3ae5c Reviewed-on: https://skia-review.googlesource.com/97122 Reviewed-by: Kevin Lubick <kjlubick@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Fix invalid switch in FuzzCanvasGravatar Kevin Lubick2018-01-11
| | | | | | | | | | | Also tweak when we report OOM - AFL-fuzz is fine, but libfuzzer should abort, not exit. Bug: skia: Change-Id: Ic19277bbceec5e7c0ac966d6d9ac677bcfebcfae Reviewed-on: https://skia-review.googlesource.com/93201 Commit-Queue: Kevin Lubick <kjlubick@google.com> Reviewed-by: Hal Canary <halcanary@google.com>
* Add in Region SetPath FuzzerGravatar Kevin Lubick2018-01-11
| | | | | | | | | | Also refactor a few things to make it easier to use oss-fuzz. Bug: skia: Change-Id: Ie518a6cfc7d57a347b5d09089379f986d33f8b7f Reviewed-on: https://skia-review.googlesource.com/41740 Commit-Queue: Kevin Lubick <kjlubick@google.com> Reviewed-by: Mike Klein <mtklein@google.com>
* Refactor SerializedImageFilter to avoid duplicate codeGravatar Kevin Lubick2018-01-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | After this CL, we have 3.5 options for fuzzing ImageFilter 1. Create it from API calls and then draw it fuzz -t api -n ImageFilter -b [input] 2. Deserialize a fuzzed stream into an ImageFilter (this is what Chromium's filter_fuzz_stub does) fuzz -t filter_fuzz -b [input] 3. Create an ImageFilter from API calls, serialize it, apply some mutations to the stream, deserialize it, then draw it. fuzz -t api -n SerializedImageFilter -b [input] 3.5 Create ImageFilters as part of our more general canvas fuzzers. fuzz -t api -n RasterN32Canvas -b [input] (and others) Previously, the SerializedImageFilter had its own, slightly stale and prone to stack-overflow way of making an image filter. This CL re-uses what we already do for Canvas fuzzing and removes that dead code. Additionally, there is a way to easily generate a corpus for the filter_fuzz type, via SerializedImageFilter. Bug: skia: Change-Id: I31bb4ffce2abf1c1a6d0a7000e5aceb8d7b38b65 Reviewed-on: https://skia-review.googlesource.com/92142 Reviewed-by: Hal Canary <halcanary@google.com> Commit-Queue: Kevin Lubick <kjlubick@google.com>
* Make commandline flags nicer for fuzz executableGravatar Kevin Lubick2018-01-09
| | | | | | | | | | | This cleans up the build so commandline flags defined in tools/*.cpp don't get globbed into the fuzzer's. Bug: skia: Change-Id: I5994aa5bf75686641baf0cf97fd81141f0ac6f3a Reviewed-on: https://skia-review.googlesource.com/92680 Commit-Queue: Kevin Lubick <kjlubick@google.com> Reviewed-by: Mike Klein <mtklein@google.com>
* Fuzz: GrContextFactory needs to stay in scopeGravatar Hal Canary2018-01-08
| | | | | | | | Change-Id: I5d6bd4fae2e98e5286eefd9399292dfb926f85df Reviewed-on: https://skia-review.googlesource.com/91701 Reviewed-by: Brian Salomon <bsalomon@google.com> Reviewed-by: Kevin Lubick <kjlubick@google.com> Commit-Queue: Hal Canary <halcanary@google.com>