]> git.wh0rd.org - fontconfig.git/blobdiff - src/fccache.c
Check existence of directory cache file before attempting to unlink.
[fontconfig.git] / src / fccache.c
index 7ccb5295013f3a946146d0af273406faca06855b..0bbfffe244b2ad6cb9ccd4c247296ee6971d87c7 100644 (file)
@@ -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;