Go to file
Herb Derby e4ef35caa1 add matrix compare to text blob key
In multi-threaded use, the cache would return a blob with direct
sub runs without comparing matrices. If two direct blobs have
different matrices, then they are incompatible. The original
code would find that the blob did not exist in the cache.
It would then make a new blob and insert it into the cache.
During that time, a different thread would create an
incompatible blob and insert it into the cache. The original
thread would insert the new blob into the cache, but the cache
finding an existing blob would return the incompatible blob.

The solution was to make the matrix, and drawing type part of
the key. Now, only compatible blobs are returned from the cache.

Change-Id: I318c756f07c84dd48b353b25639f9dcbe80c7b4b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/377976
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2021-03-03 22:25:56 +00:00
animations first cut at a checkbox 2009-10-21 19:41:10 +00:00
bazel bazel baby steps 2020-09-14 15:18:32 +00:00
bench encapsulate GrSDFTOptions better 2021-03-03 14:27:32 +00:00
bin pull arm64 binary on arm64 Mac/Linux 2021-01-15 19:00:46 +00:00
build/fuchsia [fuchsia] Fix fidlc command. 2020-06-10 03:29:24 +00:00
build_overrides Port to ANGLE's GN files 2020-09-11 15:22:34 +00:00
client_utils/android Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
demos.skia.org [canvaskit] Update all demos to use full version from 0.25.0 2021-03-03 14:38:35 +00:00
dm Reland "Redesign program key construction" 2021-03-03 17:44:00 +00:00
docker [infra] Fix index.d.ts copy in Wasm Docker build 2021-02-23 15:54:11 +00:00
docs/examples Guard legacy matrixtransforms, and expose new one 2021-02-01 22:10:39 +00:00
example Reland "Remove use of legacy display globals." 2020-10-05 19:13:58 +00:00
experimental Flesh out ddlbench's startup boiler-plate 2021-02-26 18:12:01 +00:00
fuzz Activate FuzzDDLThreading 2021-02-25 21:26:07 +00:00
gm Fix downsampled blur with clamp mode. 2021-03-03 14:15:31 +00:00
gn Add GrThreadSafePipelineBuilder 2021-03-03 16:44:21 +00:00
include Emit new style key information in generated effects 2021-03-03 20:39:36 +00:00
infra update FM service account 2021-03-03 20:01:39 +00:00
modules Treat control codepoints as resolved 2021-03-02 20:38:48 +00:00
platform_tools [SkottieView] call onAnimationEnd listeners after finished repeating 2021-03-02 15:35:03 +00:00
resources # Enter a description of the change. 2021-03-03 22:21:36 +00:00
samplecode Make GrGLSLFragmentProcessors be created as std::unique_ptr. 2021-02-23 19:31:01 +00:00
site update release notes 2021-02-26 22:02:24 +00:00
specs Fix CanvasKit generated documentation to work with emscripten 1.39.16. 2020-05-27 12:23:32 +00:00
src add matrix compare to text blob key 2021-03-03 22:25:56 +00:00
tests # Enter a description of the change. 2021-03-03 22:21:36 +00:00
third_party Roll skcms from 4a4ff5bbefdf to 4e5402c56973 (3 revisions) 2021-02-24 07:02:54 +00:00
tools fm: Make --writeShaders dump fragment, vertex, and key files 2021-03-03 20:10:06 +00:00
.bazelignore bazel baby steps 2020-09-14 15:18:32 +00:00
.clang-format Disable BinPackParameters in .clang-format 2020-03-27 14:32:40 +00:00
.clang-tidy Disable ClangTidy namespace comments for short blocks. 2020-08-24 14:01:22 +00:00
.gitignore Update gitignore for goma win_toolchain 2021-02-01 17:25:52 +00:00
.gn Pre-emptive fix for upcoming ANGLE change. 2021-01-08 17:23:52 +00:00
AUTHORS Add UWP support 2021-02-10 19:04:42 +00:00
BUILD.bazel bazel baby steps 2020-09-14 15:18:32 +00:00
BUILD.gn Activate FuzzDDLThreading 2021-02-25 21:26:07 +00:00
codereview.settings Make uploading to Gerrit the default for Skia 2016-11-09 19:07:56 +00:00
CONTRIBUTING Fix references to https://sites.google.com/site/skiadocs/. 2015-02-03 13:12:54 -02:00
CQ_COMMITTERS Moved committer list to chrome-infra-auth and deleted it from the repo 2015-09-02 13:37:54 -07:00
DEPS Roll ANGLE from 6b6da203cce0 to 1de8b5a697e7 (8 revisions) 2021-03-03 04:47:29 +00:00
DIR_METADATA Move metadata in OWNERS files to DIR_METADATA files 2021-02-02 23:41:54 +00:00
go.mod [infra] Roll infra dependency 2021-02-25 19:56:00 +00:00
go.sum [infra] Roll infra dependency 2021-02-25 19:56:00 +00:00
LICENSE LICENSE file: clean up 2019-11-22 21:59:03 +00:00
PRESUBMIT.py Reland "[infra] Switch from isolate to RBE-CAS" 2021-02-22 14:41:06 +00:00
public.bzl Support building GrGLInterface factory functions for both EGL and GLX. 2021-02-23 16:37:48 +00:00
README Fix references to https://sites.google.com/site/skiadocs/. 2015-02-03 13:12:54 -02:00
README.chromium Update README.chromium. 2015-06-11 13:19:24 -07:00
RELEASE_NOTES.txt update release notes 2021-02-26 22:02:24 +00:00
whitespace.txt Whitespace change to re-trigger Mac/iOS tests 2020-02-23 20:55:01 +00:00
WORKSPACE.bazel bazel baby steps 2020-09-14 15:18:32 +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.