diff --git a/ChangeLog b/ChangeLog index 2ccc120..bd2585e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2005-10-14 Mike Fabian + reviewed by: plam + + * src/fccache.c (FcDirCacheUnlink): + + Check existence of directory cache file before attempting to unlink. + 2005-10-13 Patrick Lam * src/fccache.c (FcDirCacheUnlink): diff --git a/src/fccache.c b/src/fccache.c index 7ccb529..0bbfffe 100644 --- a/src/fccache.c +++ b/src/fccache.c @@ -573,8 +573,10 @@ FcBool FcDirCacheUnlink (const FcChar8 *dir) { FcChar8 *cache_file = FcStrPlus (dir, (FcChar8 *) "/" FC_DIR_CACHE_FILE); + struct stat cache_stat; - if (unlink ((char *)cache_file) != 0) + if (stat ((char *) cache_file, &cache_stat) == 0 && + unlink ((char *)cache_file) != 0) { FcStrFree (cache_file); return FcFalse;