From: Patrick Lam Date: Tue, 31 Jan 2006 04:07:45 +0000 (+0000) Subject: Don't stop scanning if a directory in fonts.conf doesn't exist, because X-Git-Tag: fc-2_3_94~49 X-Git-Url: https://git.wh0rd.org/?p=fontconfig.git;a=commitdiff_plain;h=275cf6cd8350f8a9f29caabd5b1994c6324caaf6 Don't stop scanning if a directory in fonts.conf doesn't exist, because subsequent directories might exist. reviewed by: plam --- diff --git a/ChangeLog b/ChangeLog index be57882..eebf3c0 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2006-01-30 Mike Fabian + 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 * src/fccache.c (FcGlobalCacheLoad): diff --git a/fc-cache/fc-cache.c b/fc-cache/fc-cache.c index 2d6c2c3..f93a085 100644 --- a/fc-cache/fc-cache.c +++ b/fc-cache/fc-cache.c @@ -113,6 +113,7 @@ scanDirs (FcStrList *list, FcConfig *config, char *program, FcBool force, FcBool { int ret = 0; const FcChar8 *dir; + const FcChar8 *dir_orig; FcFontSet *set; FcStrSet *subdirs; 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 * and write out the results */ - while ((dir = FcStrListNext (list))) + while ((dir_orig = FcStrListNext (list))) { - dir = FcConfigNormalizeFontDir (config, dir); - if (!dir) - return FcFalse; - + dir = FcConfigNormalizeFontDir (config, dir_orig); + if (verbose) { - printf ("%s: \"%s\": ", program, dir); + printf ("%s: \"%s\": ", program, dir ? dir : dir_orig); fflush (stdout); } + + if (!dir) + { + if (verbose) + printf ("skipping, no such directory\n"); + continue; + } + + set = FcFontSetCreate (); if (!set) {