diff options
author | Qt Continuous Integration System <qt-info@nokia.com> | 2011-05-17 23:11:22 (GMT) |
---|---|---|
committer | Qt Continuous Integration System <qt-info@nokia.com> | 2011-05-17 23:11:22 (GMT) |
commit | 2c07b5d2cba8d8e499bd0861eefef12d4e00d99a (patch) | |
tree | 3e6b31daecfe217b355fa973f2f122da8468c0ac /src/gui/text/qfontengine_ft.cpp | |
parent | cb2980a09aefcc207eacb500d5a3c74f064859dd (diff) | |
parent | 3773fcb78db02a2577c89f755c07c2c7dbf0de74 (diff) | |
download | Qt-2c07b5d2cba8d8e499bd0861eefef12d4e00d99a.zip Qt-2c07b5d2cba8d8e499bd0861eefef12d4e00d99a.tar.gz Qt-2c07b5d2cba8d8e499bd0861eefef12d4e00d99a.tar.bz2 |
Merge branch 'qt-4.8-from-4.7' of scm.dev.nokia.troll.no:qt/qt-integration into master-integration
* 'qt-4.8-from-4.7' of scm.dev.nokia.troll.no:qt/qt-integration: (55 commits)
Fix thread safety regression of QNetworkConfigurationManager
Fix instability in QNetworkConfigurationManager autotest
Support word selection list with predictive text from splitview
Fix softkey icon positioning in S60 5.3
QDeclarativeMouseArea: block context menu events
ListViews loses items if all visible items are removed.
Make TextEdit word selection more natural.
Clear confusion between QMainWindow and QMainWindowLayout.
Fix for rounded corners bug in QMenu
Compile
QWidgetPrivate::setParent_sys might be using null pointer
Ensure the TextEdit cursor delegate is repositioned on mouse events.
Don't crash on an invalid replacementStart from an input method.
Fix incorrect hardware address on systems without getifaddrs()
Enable multisampling on Symbian if hw supports it
Fix QtCoreu.def file error
Introduce platform extension to QGraphicsSystem
Fix Symbian/WinsCW build break
Prevent crash in OpenGL engine when scaling images / pixmaps.
emit QNetWorkAccessManager::finished on QNetworkReply::abort()
...
Diffstat (limited to 'src/gui/text/qfontengine_ft.cpp')
-rw-r--r-- | src/gui/text/qfontengine_ft.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/gui/text/qfontengine_ft.cpp b/src/gui/text/qfontengine_ft.cpp index 4dae2a3..9d4a21a 100644 --- a/src/gui/text/qfontengine_ft.cpp +++ b/src/gui/text/qfontengine_ft.cpp @@ -1751,6 +1751,7 @@ glyph_metrics_t QFontEngineFT::alphaMapBoundingBox(glyph_t glyph, QFixed subPixe } else { glyphSet = &defaultGlyphSet; } + bool needsDelete = false; Glyph * g = glyphSet->getGlyph(glyph); if (!g || g->format != format) { face = lockFace(); @@ -1758,6 +1759,7 @@ glyph_metrics_t QFontEngineFT::alphaMapBoundingBox(glyph_t glyph, QFixed subPixe FT_Matrix_Multiply(&glyphSet->transformationMatrix, &m); freetype->matrix = m; g = loadGlyph(glyphSet, glyph, subPixelPosition, format); + needsDelete = true; } if (g) { @@ -1766,6 +1768,8 @@ glyph_metrics_t QFontEngineFT::alphaMapBoundingBox(glyph_t glyph, QFixed subPixe overall.width = g->width; overall.height = g->height; overall.xoff = g->advance; + if (needsDelete) + delete g; } else { int left = FLOOR(face->glyph->metrics.horiBearingX); int right = CEIL(face->glyph->metrics.horiBearingX + face->glyph->metrics.width); |