Don't stop scanning if a directory in fonts.conf doesn't exist, because

subsequent directories might exist.
reviewed by: plam
This commit is contained in:
Patrick Lam 2006-01-31 04:07:45 +00:00
parent 81d97094cf
commit 275cf6cd83
2 changed files with 22 additions and 6 deletions

View File

@ -1,3 +1,11 @@
2006-01-30 Mike Fabian <mfabian@suse.de>
reviewed by: plam
* fc-cache/fc-cache.c (scanDirs):
Don't stop scanning if a directory in fonts.conf doesn't
exist, because subsequent directories might exist.
2006-01-30 Patrick Lam <plam@mit.edu> 2006-01-30 Patrick Lam <plam@mit.edu>
* src/fccache.c (FcGlobalCacheLoad): * src/fccache.c (FcGlobalCacheLoad):

View File

@ -113,6 +113,7 @@ scanDirs (FcStrList *list, FcConfig *config, char *program, FcBool force, FcBool
{ {
int ret = 0; int ret = 0;
const FcChar8 *dir; const FcChar8 *dir;
const FcChar8 *dir_orig;
FcFontSet *set; FcFontSet *set;
FcStrSet *subdirs; FcStrSet *subdirs;
FcStrList *sublist; FcStrList *sublist;
@ -122,17 +123,24 @@ scanDirs (FcStrList *list, FcConfig *config, char *program, FcBool force, FcBool
* Now scan all of the directories into separate databases * Now scan all of the directories into separate databases
* and write out the results * and write out the results
*/ */
while ((dir = FcStrListNext (list))) while ((dir_orig = FcStrListNext (list)))
{ {
dir = FcConfigNormalizeFontDir (config, dir); dir = FcConfigNormalizeFontDir (config, dir_orig);
if (!dir)
return FcFalse;
if (verbose) if (verbose)
{ {
printf ("%s: \"%s\": ", program, dir); printf ("%s: \"%s\": ", program, dir ? dir : dir_orig);
fflush (stdout); fflush (stdout);
} }
if (!dir)
{
if (verbose)
printf ("skipping, no such directory\n");
continue;
}
set = FcFontSetCreate (); set = FcFontSetCreate ();
if (!set) if (!set)
{ {