skia2/include
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
..
android Move SkBitmapRegionDecoder to include/android and src/android 2015-11-13 06:11:09 -08:00
animator Change SkTime::GetMSecs to double; ensure values stored in SkMSec do not overflow. 2016-03-25 12:59:53 -07:00
c add drawCircle to c api 2016-02-09 13:25:51 -08:00
codec Parse icc profiles and exif orientation from jpeg markers 2016-03-21 08:04:40 -07:00
config SkPDF: Use Pathops clipping 2016-03-31 07:33:57 -07:00
core Fixes for SkRWBuffer 2016-04-14 11:40:48 -07:00
effects Switch SkMagnifierImageFilter over to new onFilterImage interface 2016-04-14 07:54:04 -07:00
gpu Remove GrTextureStorageAllocator. This was added from Chromium but never used and not expected to be used. 2016-04-13 14:29:25 -07:00
images Delete SkPageFlipper 2016-03-25 10:31:22 -07:00
pathops Move SkTDArray to private. 2016-02-18 08:53:33 -08:00
ports Remove SK_VERY_LEGACY_CREATE_TYPEFACE. 2016-04-13 05:23:35 -07:00
private Convert SkRefCnt to std::atomic. 2016-04-08 06:58:52 -07:00
svg move SkTDict and SkTSearch into private 2016-01-03 18:36:05 -08:00
utils Reverse dependency between SkScalar.h and SkFixed.h. 2016-04-07 08:49:31 -07:00
views Move SkGLContext and some GrGLInterface implementations to skgputest module 2016-03-30 18:56:20 -07:00
xml remove unused BML (binary xml) code 2016-04-09 11:09:49 -07:00