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