Fix texture glyph cache setup in old OpenGL paint engine
Caused assert-crash reported on Windows. Task-number: QTBUG-37027 Change-Id: If84b970a153570115afb344797728a0b1a04db5b Reviewed-by: Kai Koehne <kai.koehne@digia.com>
This commit is contained in:
parent
74d4fcea4a
commit
aac68a9ef3
@ -1482,9 +1482,10 @@ void QGL2PaintEngineEx::drawStaticTextItem(QStaticTextItem *textItem)
|
||||
// don't try to cache huge fonts or vastly transformed fonts
|
||||
QFontEngine *fontEngine = textItem->fontEngine();
|
||||
if (shouldDrawCachedGlyphs(fontEngine, s->matrix)) {
|
||||
QFontEngine::GlyphFormat glyphFormat = fontEngine->glyphFormat >= 0
|
||||
? QFontEngine::GlyphFormat(textItem->fontEngine()->glyphFormat)
|
||||
: d->glyphCacheFormat;
|
||||
|
||||
QFontEngine::GlyphFormat glyphFormat = fontEngine->glyphFormat != QFontEngine::Format_None
|
||||
? fontEngine->glyphFormat : d->glyphCacheFormat;
|
||||
|
||||
if (glyphFormat == QFontEngine::Format_A32) {
|
||||
if (!QGLFramebufferObject::hasOpenGLFramebufferObjects()
|
||||
|| d->device->alphaRequested() || s->matrix.type() > QTransform::TxTranslate
|
||||
@ -1532,10 +1533,8 @@ void QGL2PaintEngineEx::drawTextItem(const QPointF &p, const QTextItem &textItem
|
||||
|
||||
QTransform::TransformationType txtype = s->matrix.type();
|
||||
|
||||
QFontEngine::GlyphFormat glyphFormat = ti.fontEngine->glyphFormat >= 0
|
||||
? ti.fontEngine->glyphFormat
|
||||
: d->glyphCacheFormat;
|
||||
|
||||
QFontEngine::GlyphFormat glyphFormat = ti.fontEngine->glyphFormat != QFontEngine::Format_None
|
||||
? ti.fontEngine->glyphFormat : d->glyphCacheFormat;
|
||||
|
||||
if (glyphFormat == QFontEngine::Format_A32) {
|
||||
if (!QGLFramebufferObject::hasOpenGLFramebufferObjects()
|
||||
|
Loading…
Reference in New Issue
Block a user