diff --git a/ChangeLog b/ChangeLog index 328b0fb..32f20e4 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2006-01-26 Mike Fabian + reviewed by: plam + + * src/fcacache.c (FcGlobalCacheReadDir): + + Don't crash on non-existant directories in global cache. + 2006-01-26 Patirck Lam * src/fccache.c (FcGlobalCacheSave, FcDirCacheWrite): * src/fccfg.c (FcConfigAddFontDirSubdirs, FcConfigNormalizeFontDir): diff --git a/src/fccache.c b/src/fccache.c index 349bc9a..a687483 100644 --- a/src/fccache.c +++ b/src/fccache.c @@ -304,7 +304,9 @@ FcGlobalCacheReadDir (FcFontSet *set, FcStrSet *dirs, FcGlobalCache * cache, con if (cache->fd == -1) return FcFalse; - dir = (char *)FcConfigNormalizeFontDir (config, (FcChar8 *)dir); + if (!(dir = (char *)FcConfigNormalizeFontDir (config, (FcChar8 *)dir))) + return FcFalse; /* non-existing directory */ + for (d = cache->dirs; d; d = d->next) { if (strncmp (d->name, dir, strlen(dir)) == 0)