Index: src/gpu/gl/GrGLTexture.cpp |
diff --git a/src/gpu/gl/GrGLTexture.cpp b/src/gpu/gl/GrGLTexture.cpp |
index 39a8d9279feef49637882b5e7a15a1c0e59305d5..4c01823932e5bc1866d02b932d84edc95375fdda 100644 |
--- a/src/gpu/gl/GrGLTexture.cpp |
+++ b/src/gpu/gl/GrGLTexture.cpp |
@@ -37,6 +37,10 @@ void GrGLTexture::init(const GrSurfaceDesc& desc, const IDDesc& idDesc) { |
void GrGLTexture::onRelease() { |
if (fInfo.fID) { |
if (GrGpuResource::kBorrowed_LifeCycle != fTextureIDLifecycle) { |
+ if (desc().fTextureStorageAllocator) { |
+ desc().fTextureStorageAllocator->deallocateTextureStorage( |
+ reinterpret_cast<GrBackendObject>(&fInfo)); |
+ } |
GL_CALL(DeleteTextures(1, &fInfo.fID)); |
} |
fInfo.fID = 0; |