Don't render glyph with FT with fetchMetricsOnly
authorJiang Jiang <jiang.jiang@nokia.com>
Wed, 15 Feb 2012 13:41:07 +0000 (14:41 +0100)
committerQt by Nokia <qt-info@nokia.com>
Fri, 17 Feb 2012 04:28:32 +0000 (05:28 +0100)
Neither rendering with outline nor fetchMetricsOnly requires the
rendering from FreeType so we don't need to render them or cache
it. It should speed up recalcAdvances() quite a lot.

Change-Id: I0f623cb4f79da2edf6e9c9634a2f22fb0c66823c
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
src/gui/text/qfontengine_ft.cpp

index 8880eb7..14e2dba 100644 (file)
@@ -877,7 +877,7 @@ QFontEngineFT::Glyph *QFontEngineFT::loadGlyph(QGlyphSet *set, uint glyph,
     if (err != FT_Err_Ok)
         qWarning("load glyph failed err=%x face=%p, glyph=%d", err, face, glyph);
 
     if (err != FT_Err_Ok)
         qWarning("load glyph failed err=%x face=%p, glyph=%d", err, face, glyph);
 
-    if ((!set || set->outline_drawing) && fetchMetricsOnly)
+    if (!set || set->outline_drawing || fetchMetricsOnly)
         return 0;
 
     FT_GlyphSlot slot = face->glyph;
         return 0;
 
     FT_GlyphSlot slot = face->glyph;