aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core
diff options
context:
space:
mode:
authorGravatar Ruiqi Mao <ruiqimao@google.com>2018-07-17 14:00:22 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2018-07-17 20:46:22 +0000
commit6807a0185cb7d984bfb2c8157cd081b54c04bf08 (patch)
tree2c4b243b848b466f75ebb6fd79b1f6990826480d /src/core
parent3229e65886a04a33c906d15d10c1bf7e97910109 (diff)
fix MSAN dm failures
Bug: skia: Change-Id: I1c85f5579f48501e448009d7f7df129c790ae5ee Reviewed-on: https://skia-review.googlesource.com/141831 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Ruiqi Mao <ruiqimao@google.com>
Diffstat (limited to 'src/core')
-rw-r--r--src/core/SkThreadedBMPDevice.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/core/SkThreadedBMPDevice.cpp b/src/core/SkThreadedBMPDevice.cpp
index de2b6c0230..36a3a3e4c6 100644
--- a/src/core/SkThreadedBMPDevice.cpp
+++ b/src/core/SkThreadedBMPDevice.cpp
@@ -226,6 +226,12 @@ void SkThreadedBMPDevice::drawVertices(const SkVertices* vertices, const SkMatri
int boneCount, SkBlendMode bmode, const SkPaint& paint) {
const sk_sp<SkVertices> verts = sk_ref_sp(vertices); // retain vertices until flush
SkRect drawBounds = SkRectPriv::MakeLargest(); // TODO tighter drawBounds
+
+ // Make the bone matrices thread-safe.
+ for (int i = 0; i < boneCount; i ++) {
+ bones[i].getType();
+ }
+
fQueue.push(drawBounds, [=](SkArenaAlloc*, const DrawState& ds, const SkIRect& tileBounds){
TileDraw(ds, tileBounds).drawVertices(verts->mode(), verts->vertexCount(),
verts->positions(), verts->texCoords(),