aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/GrDrawingManager.cpp
diff options
context:
space:
mode:
authorGravatar Robert Phillips <robertphillips@google.com>2018-02-07 08:37:50 -0500
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2018-02-07 14:22:58 +0000
commited858ec0951a10bc8bef1f883c925e1ac5e5766f (patch)
treeb1b12d3ccd7778b9d96cf1b172f638c3b951ab00 /src/gpu/GrDrawingManager.cpp
parent14962b7f1341941ec1f2e759c4783f28fd0330c6 (diff)
Re-enable explicit resource allocation in Skia (take 2)
Unsurprisingly, given how we're adding them to the opList's deferredProxy list, a proxy can appear twice. Change-Id: I474357a1c3ee8cedf51dbeffcd0e0a96f396375c Reviewed-on: https://skia-review.googlesource.com/103701 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
Diffstat (limited to 'src/gpu/GrDrawingManager.cpp')
-rw-r--r--src/gpu/GrDrawingManager.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/gpu/GrDrawingManager.cpp b/src/gpu/GrDrawingManager.cpp
index 1897860ee1..47c5ecf691 100644
--- a/src/gpu/GrDrawingManager.cpp
+++ b/src/gpu/GrDrawingManager.cpp
@@ -237,7 +237,11 @@ bool GrDrawingManager::executeOpLists(int startIndex, int stopIndex, GrOpFlushSt
continue;
}
#else
- SkASSERT(fOpLists[i]->isInstantiated());
+ if (!fOpLists[i]->isInstantiated()) {
+ // If the backing surface wasn't allocated drop the draw of the entire opList.
+ fOpLists[i] = nullptr;
+ continue;
+ }
#endif
// TODO: handle this instantiation via lazy surface proxies?