skia2/resources
John Stiles 61e5e202a5 Enforce an upper bound on Runtime Effect program size.
The fuzzer is currently learning to make unboundedly-large programs by
nesting medium-size loops repeatedly. SkVM doesn't have a mechanism to
limit the ensuing explosion of code and ends up making unreasonably deep
stacks and/or unreasonably large programs.

SkSL now enforces an upper bound of approximately 100,000 IR nodes on a
fully-flattened, fully-inlined strict-ES2 program. The limit is picked
out of thin air, but this should be enough to prevent SkVM from going
haywire while still being large enough to handle any reasonable program.
We can definitely tune this value if we find that it is too large
(admitting dangerous code) or too small (rejecting good code).

Change-Id: I11735636175721fbc79460b4e194d8e4b42dc47d
Bug: skia:12396, oss-fuzz:37827, oss-fuzz:37837
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/444358
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2021-09-02 14:44:34 +00:00
..
android_fonts Move lang to list in Android font manager. 2017-08-14 19:29:05 +00:00
diff_canvas_traces SkRemoteGlyphCache Add tracing to diff canvas 2019-10-24 17:09:31 +00:00
empty_images Do not create an SkRawCodec with zero dimensions 2016-12-02 22:23:35 +00:00
fonts Reland: [COLRv1] Support retrieving ClipBox. 2021-08-10 15:13:14 +00:00
icc_profiles update ColorSpaceTest.cpp to remove MakeICC 2018-05-23 17:11:11 +00:00
images Re-enable large png decode bench 2021-07-08 19:39:49 +00:00
invalid_images Move skbug5883.gif to a better test 2021-03-17 19:44:10 +00:00
nima skeletal animation support added to API and software backend 2018-06-29 19:34:28 +00:00
particles Fix particle bug where uniforms are allocated too late 2021-02-03 22:50:28 +00:00
skottie [skottie] Add support for displacement map output expansion 2021-08-12 17:43:14 +00:00
sksl Enforce an upper bound on Runtime Effect program size. 2021-09-02 14:44:34 +00:00
text Shaper Tests: make a macro, rename test resources. 2019-05-03 17:16:36 +00:00
Cowboy.svg Add animated cowboy sample from WebKit tests, and fix. 2017-09-25 21:14:09 +00:00
crbug769134.fil Avoid uninitialized memory in readByteArrayAsData 2017-09-28 19:51:32 +00:00
nov-talk-sequence.txt demo tweaks, scale up perlin, add call to flush for fps 2015-11-09 13:10:30 -08:00
pdf_command_stream.txt SkPDF/Bench: add bench for SkPDFSharedStream (deflate) 2016-02-24 15:17:20 -08:00
README Add animated cowboy sample from WebKit tests, and fix. 2017-09-25 21:14:09 +00:00

The resources directory includes some third party content used by Skia.
Licenses for that code are included in this file.

Openclipart

Openclipart uses the Creative Commons Zero 1.0 Public Domain License every time
an artist uploads a piece of clipart to Openclipart to make it clear the artist
is releasing the creative work for anyone to use for any reason, even
commercially. This act of "sharing" is the foundation Openclipart is based upon.
More details on the license can be found at
https://creativecommons.org/publicdomain/zero/1.0/.

LGPL or compatible (as implied by inclusion in KDE SVN)
http://websvn.kde.org/trunk/tests/ksvgtests/custom/cowboy.svg