Check for non-empty face->family_name and face->style_name before using

those for the font. Empty names match everything. Bug #171.
This commit is contained in:
Keith Packard 2004-12-05 04:11:11 +00:00
parent 537e3d23fa
commit e4125ef950
2 changed files with 14 additions and 5 deletions

View File

@ -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:

View 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);