aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorGravatar Robert Phillips <robertphillips@google.com>2017-09-21 15:11:03 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-09-21 20:43:56 +0000
commitcfbbcbe5262488bcb6110a27d401d05a04385da1 (patch)
treeed77b4b972b1d3d28a93f5ee0272a7622d6f7a7c /src
parent85463e6ec45f29aa4b8f37b6094d3525248101d7 (diff)
Temporary patch for Mac TSAN bot (with threaded Ganesh mask generation)
Change-Id: Id84e1534b00583eb2d76699386f42277d2007602 Reviewed-on: https://skia-review.googlesource.com/49900 Reviewed-by: Brian Salomon <bsalomon@google.com> Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
Diffstat (limited to 'src')
-rw-r--r--src/gpu/GrClipStackClip.cpp6
-rw-r--r--src/gpu/GrSoftwarePathRenderer.cpp6
2 files changed, 12 insertions, 0 deletions
diff --git a/src/gpu/GrClipStackClip.cpp b/src/gpu/GrClipStackClip.cpp
index 69d81a08a2..1be35a88e3 100644
--- a/src/gpu/GrClipStackClip.cpp
+++ b/src/gpu/GrClipStackClip.cpp
@@ -526,6 +526,12 @@ sk_sp<GrTextureProxy> GrClipStackClip::createSoftwareClipMask(
proxy = GrSurfaceProxy::MakeDeferred(context->resourceProvider(), desc,
SkBackingFit::kApprox, SkBudgeted::kYes);
+ // TODO: I believe the assignUniqueKeyToProxy below used to instantiate the proxy before
+ // the draw that used the result was being flushed, so the upload was succeeding. With
+ // assignUniqueKeyToProxy no longer forcing an instantiation it will have to happen
+ // explicitly elsewhere.
+ proxy->instantiate(context->resourceProvider());
+
auto uploader = skstd::make_unique<GrMaskUploaderPrepareCallback<ClipMaskData>>(
proxy, reducedClip);
GrMaskUploaderPrepareCallback<ClipMaskData>* uploaderRaw = uploader.get();
diff --git a/src/gpu/GrSoftwarePathRenderer.cpp b/src/gpu/GrSoftwarePathRenderer.cpp
index 421dd6b11c..c9377e26de 100644
--- a/src/gpu/GrSoftwarePathRenderer.cpp
+++ b/src/gpu/GrSoftwarePathRenderer.cpp
@@ -305,6 +305,12 @@ bool GrSoftwarePathRenderer::onDrawPath(const DrawPathArgs& args) {
return false;
}
+ // TODO: I believe the assignUniqueKeyToProxy below used to instantiate the proxy before
+ // before the draw that used the result was being flushed, so the upload was succeeding.
+ // With assignUniqueKeyToProxy no longer forcing an instantiation it will have to happen
+ // explicitly elsewhere.
+ proxy->instantiate(fResourceProvider);
+
auto uploader = skstd::make_unique<GrMaskUploaderPrepareCallback<SoftwarePathData>>(
proxy, *boundsForMask, *args.fViewMatrix, *args.fShape, aa);
GrMaskUploaderPrepareCallback<SoftwarePathData>* uploaderRaw = uploader.get();