14a487fd54
The only type of expressions that getConstantSubexpression could ever return are Literal and nullptr. getConstantValue now returns an optional<double>; nullopt indicates a non-constant value in the slot. This simplifies most use cases, and allows us to get rid of some extra "zero" and "one" Literal objects in some of our Constructor classes. This change fixes a recent fuzzer issue. The fuzzer had discovered that calling `getConstantSubexpression` on a ConstructorCompoundCast that contained a compile-time-constant value would return literals of the wrong type (the cast was not applied). By nesting repeated matrix casts, this type confusion could be turned into an assertion. Change-Id: Icee69219e6db2822ffdfab4e5ccdaff54584a4b6 Bug: oss-fuzz:41000 Reviewed-on: https://skia-review.googlesource.com/c/skia/+/471376 Auto-Submit: John Stiles <johnstiles@google.com> Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: John Stiles <johnstiles@google.com> |
||
---|---|---|
.. | ||
android_fonts | ||
diff_canvas_traces | ||
empty_images | ||
fonts | ||
icc_profiles | ||
images | ||
invalid_images | ||
nima | ||
particles | ||
skottie | ||
sksl | ||
text | ||
Cowboy.svg | ||
crbug769134.fil | ||
nov-talk-sequence.txt | ||
pdf_command_stream.txt | ||
README |
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