Go to file
John Stiles 4d1a935835 Avoid error cascades when casting out-of-range scalar values.
Previously, when attempting to cast a huge value to an int, SkSL would
report an error, then return the IR for
`ScalarCast(Int, FloatLiteral(huge-value))` . Now, to minimize the blast
radius of the error, we report the error but return `IntLiteral(0)`.
We've already reported an error, so there's no need to preserve the
value, and zero is less likely to produce follow-up errors.

(A similar approach is used here and worked well: https://osscs.corp.google.com/skia/skia/+/main:src/sksl/ir/SkSLConstructorCompoundCast.cpp;l=57-59)

Change-Id: Ie8e8d48380cb963466d1f47d123d64e3301cf87c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/499563
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
2022-01-25 23:13:28 +00:00
animations
bazel [bazel] Add mirrors to every external dependency. 2022-01-13 15:53:27 +00:00
bench Fix vertex size request in middle-out benchmark 2022-01-24 14:36:26 +00:00
bin [sk] Update asset download references to use SK 2021-09-17 16:55:53 +00:00
build/fuchsia
build_overrides Add Abseil dependency for Dawn 2021-09-22 22:05:32 +00:00
client_utils/android Make class members that are static constexpr also be inline. 2021-10-11 16:22:59 +00:00
demos.skia.org [demos] Add WebGPU demo using origin trial 2021-10-08 16:35:34 +00:00
dm [graphite] Bail on DM run when context creation fails. 2022-01-14 13:57:24 +00:00
docker Remove .git directories from the skia checkout in skia-release 2022-01-12 19:25:25 +00:00
docs/examples Use angle brackets for system includes 2021-11-22 17:03:11 +00:00
example [bazel] Use font manager in HelloWorld. 2022-01-11 16:22:52 +00:00
experimental [graphite] Add sampler creation 2022-01-24 21:38:15 +00:00
fuzz Fix null dereference in ~PromiseImageInfo. 2022-01-21 20:18:04 +00:00
gm [COLRv1] Take P2 into account again in gradient skewing 2022-01-13 18:16:50 +00:00
gn Migrate VerifyStaticTestsAndExpressions analysis pass out. 2022-01-25 22:09:42 +00:00
include Revert "redo AtlasTextOp caching" 2022-01-24 15:59:48 +00:00
infra Update SKP version 2022-01-23 08:22:09 +00:00
modules ParagraphBuilder::Reset 2022-01-25 19:24:40 +00:00
platform_tools Add regular expression capability to SKQP unittest filter 2022-01-25 21:39:44 +00:00
resources Fix up test SkSLInlineWithInoutArgument. 2022-01-25 21:33:45 +00:00
samplecode Fix when a glyph has a path 2021-12-07 14:58:29 +00:00
site Add SkSL color management docs 2022-01-10 14:34:46 +00:00
specs [infra] Port serve.py from Python2 to 3 2021-08-31 15:28:19 +00:00
src Avoid error cascades when casting out-of-range scalar values. 2022-01-25 23:13:28 +00:00
tests Avoid error cascades when casting out-of-range scalar values. 2022-01-25 23:13:28 +00:00
third_party Quote things in roll-freetype.sh. 2022-01-25 16:17:06 +00:00
toolchain [bazel] Add mirrors to every external dependency. 2022-01-13 15:53:27 +00:00
tools Add regular expression capability to SKQP unittest filter 2022-01-25 21:39:44 +00:00
.bazelrc [infra] Add SkParagraph (harfbuzz, ICU) to Canvaskit Bazel build. 2021-11-30 21:01:06 +00:00
.bazelversion [infra] Add Bazel rules for codecs. 2021-11-11 20:10:01 +00:00
.clang-format no more bin packing in .clang-format 2021-03-04 17:22:50 +00:00
.clang-tidy
.gitignore Add .vscode to the default gitignore list. 2021-10-13 15:23:02 +00:00
.gn
.vpython [python3] Reland recipes -> python3 changes 2021-12-01 13:04:03 +00:00
AUTHORS Fix a null pointer bug in SkData::copyRange 2022-01-24 19:27:13 +00:00
BUILD.bazel Update Bazel files 2022-01-06 18:10:57 +00:00
BUILD.gn Revert "[skslc] Generate .hlsl test output files" 2022-01-25 04:57:15 +00:00
codereview.settings
CONTRIBUTING
CQ_COMMITTERS
DEPS Roll ANGLE from 8fc4d3b1e618 to c5498b957e83 (5 revisions) 2022-01-25 20:39:09 +00:00
DIR_METADATA
go_repositories.bzl [bazel] Sketching out HelloWorld sk_app using GL 2022-01-11 13:06:19 +00:00
go.mod [bazel] Sketching out HelloWorld sk_app using GL 2022-01-11 13:06:19 +00:00
go.sum [bazel] Sketching out HelloWorld sk_app using GL 2022-01-11 13:06:19 +00:00
LICENSE
OWNERS [infra] Add wildcard OWNERS 2021-08-30 19:19:34 +00:00
PRESUBMIT.py Remove AUTHORS check from PRESUBMIT.py 2021-09-30 14:12:18 +00:00
public.bzl add no-font rules to .bzl file for google3 flag 2022-01-24 17:12:21 +00:00
README
README.chromium
RELEASE_NOTES.txt Add support for multiple child nodes to SkImageFilters::RuntimeShader 2022-01-05 20:07:00 +00:00
whitespace.txt Push shaders.skia.org. 2022-01-19 21:46:16 +00:00
WORKSPACE.bazel [bazel] Add mirrors to every external dependency. 2022-01-13 15:53:27 +00:00

Skia is a complete 2D graphic library for drawing Text, Geometries, and Images.

See full details, and build instructions, at https://skia.org.