diff options
author | Andrei Karas <akaras@inbox.ru> | 2014-06-15 01:37:01 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2014-06-15 01:37:01 +0300 |
commit | 0f208c6842ef13d8c68b179eb0ab88a37a0926b0 (patch) | |
tree | dc60df46116896fc362ac5067fbc464982ee2cc9 /src/resources/image.cpp | |
parent | 8f9ffaa42e6fa11bb963fa9f1a1824d85a50b51b (diff) | |
download | plus-0f208c6842ef13d8c68b179eb0ab88a37a0926b0.tar.gz plus-0f208c6842ef13d8c68b179eb0ab88a37a0926b0.tar.bz2 plus-0f208c6842ef13d8c68b179eb0ab88a37a0926b0.tar.xz plus-0f208c6842ef13d8c68b179eb0ab88a37a0926b0.zip |
Add OpenGL extension GL_ARB_invalidate_subdata.
And use it for invalidate prepared for deletion images.
Diffstat (limited to 'src/resources/image.cpp')
-rw-r--r-- | src/resources/image.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/resources/image.cpp b/src/resources/image.cpp index d9d2a8a01..d6f5cd27c 100644 --- a/src/resources/image.cpp +++ b/src/resources/image.cpp @@ -467,3 +467,12 @@ void Image::SDLTerminateAlphaCache() SDLCleanCache(); mUseAlphaCache = false; } + +#ifdef USE_OPENGL +void Image::decRef() +{ + if (getRefCount() <= 1) + OpenGLImageHelper::invalidate(mGLImage); + Resource::decRef(); +} +#endif |