summaryrefslogtreecommitdiffstats
path: root/src/opengl/qgl_p.h
diff options
context:
space:
mode:
authorEskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>2011-10-25 13:58:49 (GMT)
committerEskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>2011-10-25 14:02:41 (GMT)
commit207fb45ce7bac66ab53a0770d2bfb50d8d1997d8 (patch)
tree6b5d28f80776977abc54b84f6ab542256176092c /src/opengl/qgl_p.h
parent8051a73be276995adfc4508a0cb5ad6451e8ab45 (diff)
downloadQt-207fb45ce7bac66ab53a0770d2bfb50d8d1997d8.zip
Qt-207fb45ce7bac66ab53a0770d2bfb50d8d1997d8.tar.gz
Qt-207fb45ce7bac66ab53a0770d2bfb50d8d1997d8.tar.bz2
Fix possible crash in glyph cache when deleting and creating contexts
The freeResource(), used in the glyph cache as a notifier of when the owner context of the cache disappears, is never called if the context is in a group with other contexts that share its resources. This implements a second notifier function instead which can be used to invalidate the glyph cache when its context is destroyed. Task-number: QTBUG-22324 Reviewed-by: Samuel
Diffstat (limited to 'src/opengl/qgl_p.h')
-rw-r--r--src/opengl/qgl_p.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/opengl/qgl_p.h b/src/opengl/qgl_p.h
index de349a7..b6fc96a 100644
--- a/src/opengl/qgl_p.h
+++ b/src/opengl/qgl_p.h
@@ -725,6 +725,7 @@ public:
void cleanup(const QGLContext *context);
void cleanup(const QGLContext *context, void *value);
virtual void freeResource(void *value) = 0;
+ virtual void contextDeleted(const QGLContext *ctx);
protected:
QList<QGLContextGroup *> m_groups;