Make GrTextureStripAtlas DDL friendly
Change-Id: If8fdd7a1c027bc2b2791cfe1af13f99c2561d93d
Reviewed-on: https://skia-review.googlesource.com/113268
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
diff --git a/src/gpu/GrContext.cpp b/src/gpu/GrContext.cpp
index f88da28..4b624ee 100644
--- a/src/gpu/GrContext.cpp
+++ b/src/gpu/GrContext.cpp
@@ -24,6 +24,7 @@
#include "GrSurfaceProxyPriv.h"
#include "GrTexture.h"
#include "GrTextureContext.h"
+#include "GrTextureStripAtlas.h"
#include "GrTracing.h"
#include "SkConvertPixels.h"
#include "SkDeferredDisplayList.h"
@@ -90,6 +91,8 @@
fResourceCache->setProxyProvider(fProxyProvider);
}
+ fTextureStripAtlasManager.reset(new GrTextureStripAtlasManager);
+
fDisableGpuYUVConversion = options.fDisableGpuYUVConversion;
fSharpenMipmappedTextures = options.fSharpenMipmappedTextures;
fDidTestPMConversions = false;
@@ -146,10 +149,7 @@
fDrawingManager->cleanup();
}
- for (int i = 0; i < fCleanUpData.count(); ++i) {
- (*fCleanUpData[i].fFunc)(this, fCleanUpData[i].fInfo);
- }
-
+ fTextureStripAtlasManager = nullptr;
delete fResourceProvider;
delete fResourceCache;
delete fProxyProvider;
@@ -199,6 +199,7 @@
void GrContext::abandonContext() {
ASSERT_SINGLE_OWNER
+ fTextureStripAtlasManager->abandon();
fProxyProvider->abandon();
fResourceProvider->abandon();
@@ -219,6 +220,7 @@
void GrContext::releaseResourcesAndAbandonContext() {
ASSERT_SINGLE_OWNER
+ fTextureStripAtlasManager->abandon();
fProxyProvider->abandon();
fResourceProvider->abandon();