Fix rare crashes in fontconfig fontdb due to uninitialized variable
authorSimon Hausmann <simon.hausmann@nokia.com>
Wed, 4 Jan 2012 12:04:58 +0000 (13:04 +0100)
committerQt by Nokia <qt-info@nokia.com>
Wed, 4 Jan 2012 13:27:19 +0000 (14:27 +0100)
Initialize the out variable passed to FcPatternGetString to protect
against the "failure" case. Otherwise the subsequent QString::fromUtf8
is called with an uninitialized pointer.

Change-Id: I31b8b4c366f673609b26eca162334fd8bc9f25d2
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
src/platformsupport/fontdatabases/fontconfig/qfontconfigdatabase.cpp

index 0f4adca..faa2522 100644 (file)
@@ -724,7 +724,7 @@ QString QFontconfigDatabase::resolveFontFamilyAlias(const QString &family) const
     FcConfigSubstitute(0, pattern, FcMatchPattern);
     FcDefaultSubstitute(pattern);
 
-    FcChar8 *familyAfterSubstitution;
+    FcChar8 *familyAfterSubstitution = 0;
     FcPatternGetString(pattern, FC_FAMILY, 0, &familyAfterSubstitution);
     QString resolved = QString::fromUtf8((const char *) familyAfterSubstitution);
     FcPatternDestroy(pattern);