diff options
author | mtklein <mtklein@chromium.org> | 2014-12-03 13:07:39 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2014-12-03 13:07:39 -0800 |
commit | 4f10844149bbc05f0259a1b3199c2f995756ed60 (patch) | |
tree | 7240e727ca5b50037728704315e55fadc72978af | |
parent | 4de8a4dcf70fdaef7ff4e875e6f7c018053491d7 (diff) |
Turn on MPD threading in nanobench.
Seems okay after this small patch to skip lockPixels() / unlockPixels().
BUG=skia:3149
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu13.10-GCE-NoGPU-x86_64-Release-TSAN-Trybot
Review URL: https://codereview.chromium.org/773203003
-rw-r--r-- | bench/nanobench.cpp | 3 | ||||
-rw-r--r-- | src/core/SkBitmapProcShader.cpp | 6 |
2 files changed, 4 insertions, 5 deletions
diff --git a/bench/nanobench.cpp b/bench/nanobench.cpp index b7603bf3bc..03fabc44f1 100644 --- a/bench/nanobench.cpp +++ b/bench/nanobench.cpp @@ -600,8 +600,7 @@ int nanobench_main(); int nanobench_main() { SetupCrashHandler(); SkAutoGraphics ag; - // Multithreading is disabled pending resolution of skia:3149 - //SkTaskGroup::Enabler enabled; + SkTaskGroup::Enabler enabled; #if SK_SUPPORT_GPU GrContext::Options grContextOpts; diff --git a/src/core/SkBitmapProcShader.cpp b/src/core/SkBitmapProcShader.cpp index f01d559058..2e42ef1b9a 100644 --- a/src/core/SkBitmapProcShader.cpp +++ b/src/core/SkBitmapProcShader.cpp @@ -92,9 +92,9 @@ static bool valid_for_drawing(const SkBitmap& bm) { return false; // no pixels to read } if (kIndex_8_SkColorType == bm.colorType()) { - // ugh, I have to lock-pixels to inspect the colortable - SkAutoLockPixels alp(bm); - if (!bm.getColorTable()) { + SkBitmap copy(bm); // Locking and unlocking pixels is not thread safe, + SkAutoLockPixels alp(copy); // but we need to call it before getColorTable() is safe. + if (!copy.getColorTable()) { return false; } } |