Go to file
scroggo d06920a29f Fixes for SkRWBuffer
Do not call SkBufferHead::validate in SkROBuffer's destructor, which
may be called in a separate thread from SkRWBuffer::append. validate()
reads SkBufferBlock::fUsed, and append() writes to it, resulting in
a data race.

Update some comments to be more clear about how it is safe to use
these classes across threads.

Test the readers in separate threads.

In addition, make sure it is safe to create a reader even when no
data has been appended. Add tests for this case.

Mark a parameter to SkBufferHead::validate() as const, reflecting
its use.

BUG=chromium:601578
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1871953002

Review URL: https://codereview.chromium.org/1871953002
2016-04-14 11:40:48 -07:00
animations first cut at a checkbox 2009-10-21 19:41:10 +00:00
bench remove U16 support, just support F16 2016-04-14 09:02:14 -07:00
bin Fix gyp-and-sync for windows 2016-02-22 12:59:53 -08:00
cmake Move SkGLContext and some GrGLInterface implementations to skgputest module 2016-03-30 18:56:20 -07:00
debugger Fix old debugger for sk_sp changes 2016-03-25 07:04:35 -07:00
dm mojo -> nojo 2016-04-14 09:42:34 -07:00
example switch surface to sk_sp 2016-03-23 18:59:25 -07:00
experimental mojo -> nojo 2016-04-14 09:42:34 -07:00
fuzz Make fuzz builds set SK_FUZZ_LOGGING 2016-04-12 12:02:59 -07:00
gm Switch SkMagnifierImageFilter over to new onFilterImage interface 2016-04-14 07:54:04 -07:00
gyp mojo -> nojo 2016-04-14 09:42:34 -07:00
include Fixes for SkRWBuffer 2016-04-14 11:40:48 -07:00
infra More iOS swarming bot fixes 2016-04-06 11:38:55 -07:00
platform_tools Fix ChromeOS Swarming bot compile 2016-04-13 09:37:26 -07:00
resources Parse icc profiles and exif orientation from jpeg markers 2016-03-21 08:04:40 -07:00
samplecode Update LightingImageFilter to sk_sp 2016-04-08 16:28:09 -07:00
site Explain Rietveld patching better on site. 2016-04-14 10:25:01 -07:00
src Fixes for SkRWBuffer 2016-04-14 11:40:48 -07:00
tests Fixes for SkRWBuffer 2016-04-14 11:40:48 -07:00
third_party Make is_ktx safer 2016-04-12 07:41:22 -07:00
tools Only eglTerminate command buffer displays when no displays are in use 2016-04-13 15:03:59 -07:00
.gitignore Ignore sampleapp_prefs.txt in git. 2016-03-24 12:20:02 -07:00
AUTHORS Add AVX/AVX2 support for runtime check 2016-04-08 15:31:45 -07:00
codereview.settings Automatically add a docs preview link and NOTRY=true when there are only docs changes. 2015-02-26 10:16:13 -08: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 mojo -> nojo 2016-04-14 09:42:34 -07:00
Doxyfile Documentation: SkCanvas API 2015-05-19 10:21:29 -07:00
gyp_skia Make Win runtime DLLs writeable before overwriting 2016-03-18 08:33:38 -07:00
gyp_skia.py Roll gyp deps from 1765 to 1796. 2013-11-21 18:11:14 +00:00
LICENSE Include resources directory in google3 sync. 2015-10-20 13:00:48 -07:00
make.bat Fix references to https://sites.google.com/site/skiadocs/. 2015-02-03 13:12:54 -02:00
make.py GYP: remove stale skia_scalar gyp variable 2015-11-10 13:25:12 -05:00
Makefile Add visualbench as valid target to Makefile 2015-12-18 08:05:06 -08:00
OWNERS add root files from chrome 2013-08-13 19:11:15 +00:00
PRESUBMIT.py 10.9 is no more 2016-02-25 06:52:18 -08:00
public.bzl Separate private headers for condition inclusion in BUILD file. 2016-04-11 13:45:51 -07: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
SK_IMAGE_VERSION Update SK_IMAGE_VERSION to 3 2016-02-23 08:14:19 -08:00
skia.gyp Fix references to https://sites.google.com/site/skiadocs/. 2015-02-03 13:12:54 -02:00
SKP_VERSION Update SKP version 2016-04-10 00:30:13 -07:00
whitespace.txt Reland of Whitespace change to test Bugdroid+AutoRoll (patchset #1 id:1 of https://codereview.chromium.org/1861713002/ ) 2016-04-05 10:12:56 -07:00

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

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