summaryrefslogtreecommitdiffstats
path: root/src/opengl/qgl.cpp
diff options
context:
space:
mode:
authorJani Hautakangas <jani.hautakangas@nokia.com>2011-06-09 13:52:49 (GMT)
committerJani Hautakangas <jani.hautakangas@nokia.com>2011-06-09 13:52:49 (GMT)
commit06588b7704a4bd41b558a0abe611f3490b6f17e6 (patch)
tree760c107d71f70967a5c6e9a18bfba39e3198f6f2 /src/opengl/qgl.cpp
parent57092a111a314a3cafdbc5d8302cf716b6bbda36 (diff)
downloadQt-06588b7704a4bd41b558a0abe611f3490b6f17e6.zip
Qt-06588b7704a4bd41b558a0abe611f3490b6f17e6.tar.gz
Qt-06588b7704a4bd41b558a0abe611f3490b6f17e6.tar.bz2
Add missing freeTexture() from fix for QTBUG-19180
Task-number: QTBUG-19180 Reviewed-by: TRUSTME
Diffstat (limited to 'src/opengl/qgl.cpp')
-rw-r--r--src/opengl/qgl.cpp22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/opengl/qgl.cpp b/src/opengl/qgl.cpp
index 6248cfe..4fee886 100644
--- a/src/opengl/qgl.cpp
+++ b/src/opengl/qgl.cpp
@@ -5902,4 +5902,26 @@ QSize QGLTexture::bindCompressedTexturePVR(const char *buf, int len)
#undef ctx
+#ifdef Q_OS_SYMBIAN
+void QGLTexture::freeTexture()
+{
+ if (!id)
+ return;
+
+ if (inTexturePool)
+ QGLTexturePool::instance()->detachTexture(this);
+
+ if (boundPixmap)
+ boundPixmap->releaseNativeImageHandle();
+
+ if (options & QGLContext::MemoryManagedBindOption) {
+ Q_ASSERT(context);
+ context->d_ptr->texture_destroyer->emitFreeTexture(context, 0, id);
+ }
+
+ id = 0;
+ boundKey = 0;
+}
+#endif
+
QT_END_NAMESPACE