diff options
Diffstat (limited to 'src/gpu/GrDrawingManager.cpp')
-rw-r--r-- | src/gpu/GrDrawingManager.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/gpu/GrDrawingManager.cpp b/src/gpu/GrDrawingManager.cpp index 5dc07dd960..840c50f5e0 100644 --- a/src/gpu/GrDrawingManager.cpp +++ b/src/gpu/GrDrawingManager.cpp @@ -45,7 +45,8 @@ GrDrawingManager::~GrDrawingManager() { void GrDrawingManager::abandon() { fAbandoned = true; for (int i = 0; i < fDrawTargets.count(); ++i) { - if (InstancedRendering* ir = fDrawTargets[i]->instancedRendering()) { + if (GrCaps::InstancedSupport::kNone != fContext->caps()->instancedSupport()) { + InstancedRendering* ir = fDrawTargets[i]->instancedRendering(); ir->resetGpuResources(InstancedRendering::ResetType::kAbandon); } } @@ -58,7 +59,8 @@ void GrDrawingManager::freeGpuResources() { fPathRendererChain = nullptr; SkSafeSetNull(fSoftwarePathRenderer); for (int i = 0; i < fDrawTargets.count(); ++i) { - if (InstancedRendering* ir = fDrawTargets[i]->instancedRendering()) { + if (GrCaps::InstancedSupport::kNone != fContext->caps()->instancedSupport()) { + InstancedRendering* ir = fDrawTargets[i]->instancedRendering(); ir->resetGpuResources(InstancedRendering::ResetType::kDestroy); } } |