]> git.wh0rd.org - fontconfig.git/commitdiff
Check for non-empty face->family_name and face->style_name before using
authorKeith Packard <keithp@keithp.com>
Sun, 5 Dec 2004 04:11:11 +0000 (04:11 +0000)
committerKeith Packard <keithp@keithp.com>
Sun, 5 Dec 2004 04:11:11 +0000 (04:11 +0000)
    those for the font. Empty names match everything. Bug #171.

ChangeLog
src/fcfreetype.c

index fa19016680d449102f2f3bb95a99559e3872675c..159a76a019aacd95cdbb4f72c460c4d4f263a853 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2004-12-04  Keith Packard  <keithp@keithp.com>
+
+       * src/fcfreetype.c: (FcFreeTypeQuery):
+       Check for non-empty face->family_name and face->style_name
+       before using those for the font.  Empty names match everything.
+       Bug #171.
+
 2004-12-04  Keith Packard  <keithp@keithp.com>
 
        * configure.in:
index 7ca65fdeec36504f7b2f6e7f79b89d62ae26a2c1..7bc8b538cd4c82028ee814195cd15139ff59642c 100644 (file)
@@ -1163,19 +1163,21 @@ FcFreeTypeQuery (const FcChar8  *file,
            free (utf8);
     }
     
-    if (!nfamily && face->family_name)
+    if (!nfamily && face->family_name && 
+       FcStrCmpIgnoreBlanksAndCase (face->family_name, "") != 0)
     {
        if (FcDebug () & FC_DBG_SCANV)
-           printf ("using FreeType family %s", face->family_name);
+           printf ("using FreeType family \"%s\"\n", face->family_name);
        if (!FcPatternAddString (pat, FC_FAMILY, face->family_name))
            goto bail1;
        ++nfamily;
     }
     
-    if (!nstyle && face->style_name)
+    if (!nstyle && face->style_name &&
+       FcStrCmpIgnoreBlanksAndCase (face->style_name, "") != 0)
     {
        if (FcDebug () & FC_DBG_SCANV)
-           printf ("using FreeType style %s", face->family_name);
+           printf ("using FreeType style \"%s\"\n", face->style_name);
        if (!FcPatternAddString (pat, FC_STYLE, face->style_name))
            goto bail1;
        ++nstyle;
@@ -1199,7 +1201,7 @@ FcFreeTypeQuery (const FcChar8    *file,
        strncpy ((char *) family, (char *) start, end - start);
        family[end - start] = '\0';
        if (FcDebug () & FC_DBG_SCANV)
-           printf ("using filename for family %s", family);
+           printf ("using filename for family %s\n", family);
        if (!FcPatternAddString (pat, FC_FAMILY, family))
        {
            free (family);