diff options
author | Peter Yard <peter.yard@nokia.com> | 2010-12-22 06:04:57 (GMT) |
---|---|---|
committer | Peter Yard <peter.yard@nokia.com> | 2010-12-22 06:04:57 (GMT) |
commit | 53b018a42813e44787aa1edc35d59feaa86cf9d7 (patch) | |
tree | 7cce8f18faf26a87cfb5f27d1417c2a2ec86470c /src/opengl/gl2paintengineex/qtextureglyphcache_gl.cpp | |
parent | 55c32b91a298d52bd7c29968d21b4b7a5ee741e4 (diff) | |
parent | afa22a20c1b89960b647b0e3a9dc390fe6f87eae (diff) | |
download | Qt-53b018a42813e44787aa1edc35d59feaa86cf9d7.zip Qt-53b018a42813e44787aa1edc35d59feaa86cf9d7.tar.gz Qt-53b018a42813e44787aa1edc35d59feaa86cf9d7.tar.bz2 |
Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1 into 4.7
Diffstat (limited to 'src/opengl/gl2paintengineex/qtextureglyphcache_gl.cpp')
-rw-r--r-- | src/opengl/gl2paintengineex/qtextureglyphcache_gl.cpp | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/src/opengl/gl2paintengineex/qtextureglyphcache_gl.cpp b/src/opengl/gl2paintengineex/qtextureglyphcache_gl.cpp index 66445cd..ba311c3 100644 --- a/src/opengl/gl2paintengineex/qtextureglyphcache_gl.cpp +++ b/src/opengl/gl2paintengineex/qtextureglyphcache_gl.cpp @@ -83,13 +83,9 @@ void QGLTextureGlyphCache::clear() if (ctx) { QGLShareContextScope scope(ctx); - if (!ctx->d_ptr->workaround_brokenFBOReadBack) - glDeleteFramebuffers(1, &m_fbo); - if (m_width || m_height) glDeleteTextures(1, &m_texture); - m_fbo = 0; m_texture = 0; m_width = 0; m_height = 0; @@ -105,6 +101,13 @@ void QGLTextureGlyphCache::clear() QGLTextureGlyphCache::~QGLTextureGlyphCache() { + if (ctx) { + QGLShareContextScope scope(ctx); + + if (!ctx->d_ptr->workaround_brokenFBOReadBack) + glDeleteFramebuffers(1, &m_fbo); + } + clear(); } @@ -320,6 +323,9 @@ int QGLTextureGlyphCache::maxTextureWidth() const int QGLTextureGlyphCache::maxTextureHeight() const { - return ctx->d_ptr->maxTextureSize(); + if (ctx->d_ptr->workaround_brokenTexSubImage) + return qMin(1024, ctx->d_ptr->maxTextureSize()); + else + return ctx->d_ptr->maxTextureSize(); } QT_END_NAMESPACE |