Go to file
Ben Wagner 88ddcb8f50 Reland "Pin FcConfig for FCIDirect at creation."
This reverts commit d7f7cc8791.

SkFontConfigInterfaceDirect class methods used the FontConfig library
static global "current" FcConfig (implicitly through the use of
nullptr). This was pinned down once per call to each method which used
it (to avoid the "current" FcConfig from being changed out from under it
while running). However, the use of global state as a matter of course
makes it very difficult to reliably test.

Modify SkFontConfigInterface to optionally take an FcConfig on
contruction. If nullptr is provided it is equivelent to the old behavior
so that existing users are unaffected. SkFontConfigInterface takes
ownership of any passed FcConfig and will release it on destruction.

Bug: skia:12916
Change-Id: I20a3cd9405ad40f28b394c713c0514aaa3b08cd0
Revert-Reviewed-on: https://skia-review.googlesource.com/c/skia/+/504776
Revert-Change-Id: I812547bf27371ab716b7a167d7e975f7538d37fb
Revert-Reason: google3 roll failure due to memory leak
Original-Reviewed-on: https://skia-review.googlesource.com/c/skia/+/504477
Origianl-Change-Id: Ie3573403a95c6bf627ce5ff7f2eb5617c9cd162d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/505136
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2022-02-07 21:32:21 +00:00
animations
bazel [canvaskit] Add more features to Bazel build 2022-02-04 21:33:20 +00:00
bench Prepare to reenable unreachable-code warnings. 2022-02-04 21:45:39 +00:00
bin [sk] Update asset download references to use SK 2021-09-17 16:55:53 +00:00
build/fuchsia [fuchsia] Fix fidlc command. 2020-06-10 03:29:24 +00:00
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 [canvaskit] Add demo excercising lots of text 2022-02-04 13:10:29 +00:00
dm Remove references to skstd::optional in Skia. 2022-02-04 15:03:16 +00:00
docker Switch skia-build-tools to debian11. 2022-01-28 16:51:06 +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 Add SK_PRINTF_LIKE to existing variadic print functions. 2022-02-07 14:55:39 +00:00
fuzz Remove no-op versions of skstd::to_string. 2022-02-03 22:33:41 +00:00
gm Add SK_PRINTF_LIKE to existing variadic print functions. 2022-02-07 14:55:39 +00:00
gn Reland "Reenable unreachable-code warnings." 2022-02-07 14:56:09 +00:00
include rename fontID to typefaceID 2022-02-07 20:12:39 +00:00
infra Update SKP version 2022-02-06 08:28:40 +00:00
modules rename fontID to typefaceID 2022-02-07 20:12:39 +00:00
platform_tools Add regular expression capability to SKQP unittest filter 2022-01-25 21:39:44 +00:00
resources Fill out matrix-folding ES3 tests. 2022-02-07 19:53:00 +00:00
samplecode Update PatchWriter API to writeFoo instead of << Foo 2022-02-07 21:26:39 +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 Reland "Pin FcConfig for FCIDirect at creation." 2022-02-07 21:32:21 +00:00
tests Reland "Pin FcConfig for FCIDirect at creation." 2022-02-07 21:32:21 +00:00
third_party [canvaskit] Add skottie to Bazel build 2022-02-04 19:18:27 +00:00
toolchain [bazel] Regenerate files and build with c++17 2022-02-01 13:15:22 +00:00
tools Add SK_PRINTF_LIKE to existing variadic print functions. 2022-02-07 14:55:39 +00:00
.bazelrc [canvaskit] Add more features to Bazel build 2022-02-04 21:33:20 +00:00
.bazelversion [canvaskit] Add skottie to Bazel build 2022-02-04 19:18:27 +00:00
.clang-format no more bin packing in .clang-format 2021-03-04 17:22:50 +00:00
.clang-tidy Disable ClangTidy namespace comments for short blocks. 2020-08-24 14:01:22 +00:00
.gitignore Add .vscode to the default gitignore list. 2021-10-13 15:23:02 +00:00
.gn Pre-emptive fix for upcoming ANGLE change. 2021-01-08 17:23:52 +00:00
.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 Reland "[fuzzer] Remove GL from (now-Vulkan) build" 2022-02-03 18:07:47 +00:00
codereview.settings
CONTRIBUTING
CQ_COMMITTERS
DEPS Roll ANGLE from 1608a9567b66 to f65e7c3ca739 (12 revisions) 2022-02-07 05:24:44 +00:00
DIR_METADATA Move metadata in OWNERS files to DIR_METADATA files 2021-02-02 23:41:54 +00:00
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 LICENSE file: clean up 2019-11-22 21:59:03 +00:00
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 defines for new os condition flag(no_codec added in google3 build) 2022-02-07 18:24:39 +00:00
README
README.chromium
RELEASE_NOTES.txt Remove references to skstd::optional in Skia. 2022-02-04 15:03:16 +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.