9194675a3e
This maps to usage better, and makes some code simpler to understand. Note that there is still a PipelineStage *back-end*, which is specific to the runtime-effect FP. A kRuntimeEffect_Kind program can be used to generate a PipelineStage (for the GPU backend), or an skvm program (for the CPU backend). Change-Id: Id3f535db93a239726c595225aafe9467f0d19817 Reviewed-on: https://skia-review.googlesource.com/c/skia/+/344969 Reviewed-by: John Stiles <johnstiles@google.com> Commit-Queue: Brian Osman <brianosman@google.com> |
||
---|---|---|
.. | ||
oss_fuzz | ||
coverage | ||
Fuzz.cpp | ||
Fuzz.h | ||
FuzzCanvas.cpp | ||
FuzzCommon.cpp | ||
FuzzCommon.h | ||
FuzzCreateDDL.cpp | ||
FuzzDrawFunctions.cpp | ||
FuzzEncoders.cpp | ||
FuzzGradients.cpp | ||
FuzzMain.cpp | ||
FuzzParsePath.cpp | ||
FuzzPath.cpp | ||
FuzzPathMeasure.cpp | ||
FuzzPathop.cpp | ||
FuzzPolyUtils.cpp | ||
FuzzRegionOp.cpp | ||
FuzzRRect.cpp | ||
README.md |
We fuzz Skia using oss-fuzz, which in turn uses fuzzing engines such as libfuzzer, afl-fuzz, hong-fuzz and others.
We define a fuzzer
to be a targeted bit of code that takes a randomized input and executes code
in a specific area. For example, we have a codec fuzzer which takes a mutated png/jpeg or similar
file and attempts to turn it into an SkImage
. We also have a canvas fuzzer which takes in a random
set of bytes and turns them into calls on SkCanvas
.
See [../site/dev/testing/fuzz.md] for more information on building and running fuzzers.
See also: