skia2/src
John Stiles 36f53ec7e1 Disallow constructors of ES3 types in ES2 code.
The fuzzer found that we constructed TypeReferences without first
checking for disallowed tyoes. (In fact, TypeReference creation had no
error checking at all; it didn't even have Convert/Make functions.)

Added proper Convert/Make to TypeReference, and used those calls to
report errors or cause assertions if trying to make a TypeReference to a
type that the program did not support.

(While tracking down this bug, I added strict-ES2 type assertions to our
constructor IR nodes as well. This helped pinpoint the error and seem
reasonable to leave in, just in case.)

Change-Id: I896b68ae9d3d9e1f30d7eba9fa594617ab851c74
Bug: oss-fuzz:39540
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/455498
Commit-Queue: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2021-10-04 15:02:24 +00:00
..
android Rename/simplify SkCanvas::resetClip() and make recordable 2021-07-23 19:05:42 +00:00
c
codec Only treat PNG_COLOR_TYPE_RGB as 565 2021-09-07 18:45:34 +00:00
core Revert "Remove SkRuntimeShader::makeImage." 2021-09-28 13:24:50 +00:00
effects Implement separate crop filter 2021-09-24 20:18:36 +00:00
fonts
gpu Add support for function prototypes in Pipeline stage. 2021-09-30 20:02:19 +00:00
image Move DeviceFlags and CheckAlphaTypeAndGetFlags to skgpu::BaseDevice 2021-09-08 14:55:31 +00:00
images Reland "Add sRGB 8888 colortype" 2021-08-24 12:56:32 +00:00
lazy
opts Redo the types in bilerp_clamp_8888 to make more sense 2021-09-30 20:44:56 +00:00
pathops Fix various cases of variable shadowing in Skia. 2021-08-11 00:03:13 +00:00
pdf Remove ICU check from subset_harfbuzz 2021-09-27 19:17:55 +00:00
ports Implement separate crop filter 2021-09-24 20:18:36 +00:00
sfnt
shaders Scale picture shader (GPU) by input alpha 2021-09-24 19:11:34 +00:00
sksl Disallow constructors of ES3 types in ES2 code. 2021-10-04 15:02:24 +00:00
svg Use SkClipOp::kFoo instead of kFoo_SkClipOp from SkClipOpPriv 2021-08-03 18:08:21 +00:00
utils Adjust fuzzing behavior for triangulator/dashing 2021-09-16 16:32:11 +00:00
xml
xps