Commit e0be405a authored by Behdad Esfahbod's avatar Behdad Esfahbod

Bug 26718 - "fc-match sans file" doesn't work

- Do not throw away FC_FILE in FcNameUnparse
- Update the builtin "fclist" format to remove FC_FILE properly instead
- Switch fc-list to use FcPatternFormat()

Note that I had previously broken fc-list and it was not showing the
file name anymore.  No one noticed that it seems!  Now fixed.
parent 0fcf866d
......@@ -156,7 +156,9 @@ main (int argc, char **argv)
if (quiet && !os)
os = FcObjectSetCreate ();
if (!verbose && !format && !os)
os = FcObjectSetBuild (FC_FAMILY, FC_STYLE, (char *) 0);
os = FcObjectSetBuild (FC_FAMILY, FC_STYLE, FC_FILE, (char *) 0);
if (!format)
format = "%{=fclist}\n";
fs = FcFontList (0, pat, os);
if (os)
FcObjectSetDestroy (os);
......@@ -173,7 +175,7 @@ main (int argc, char **argv)
{
FcPatternPrint (fs->fonts[j]);
}
else if (format)
else
{
FcChar8 *s;
......@@ -184,17 +186,6 @@ main (int argc, char **argv)
free (s);
}
}
else
{
FcChar8 *str;
FcChar8 *file;
str = FcNameUnparse (fs->fonts[j]);
if (FcPatternGetString (fs->fonts[j], FC_FILE, 0, &file) == FcResultMatch)
printf ("%s: ", file);
printf ("%s\n", str);
free (str);
}
}
}
......
......@@ -75,7 +75,7 @@
#define FCMATCH_FORMAT "%{file:-<unknown filename>|basename}: \"%{family[0]:-<unknown family>}\" \"%{style[0]:-<unknown style>}\""
#define FCLIST_FORMAT "%{?file{%{file}: }}%{=unparse}"
#define FCLIST_FORMAT "%{?file{%{file}: }}%{-file{%{=unparse}}}"
#define PKGKIT_FORMAT "%{[]family{font(%{family|downcase|delete( )})\n}}%{[]lang{font(:lang=%{lang|downcase|translate(_,-)})\n}}"
......
......@@ -874,8 +874,7 @@ FcNameUnparseEscaped (FcPattern *pat, FcBool escape)
{
o = &l->types[i];
if (!strcmp (o->object, FC_FAMILY) ||
!strcmp (o->object, FC_SIZE) ||
!strcmp (o->object, FC_FILE))
!strcmp (o->object, FC_SIZE))
continue;
e = FcPatternObjectFindElt (pat, FcObjectFromName (o->object));
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment