diff options
author | Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com> | 2011-10-25 13:58:49 (GMT) |
---|---|---|
committer | Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com> | 2011-10-25 14:02:41 (GMT) |
commit | 207fb45ce7bac66ab53a0770d2bfb50d8d1997d8 (patch) | |
tree | 6b5d28f80776977abc54b84f6ab542256176092c /src/opengl/qgl_p.h | |
parent | 8051a73be276995adfc4508a0cb5ad6451e8ab45 (diff) | |
download | Qt-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.h | 1 |
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; |