]> git.wh0rd.org - fontconfig.git/blobdiff - fc-cache/fc-cache.c
Write caches to first directory with permission. Valid cache in FcDirCacheOpen.
[fontconfig.git] / fc-cache / fc-cache.c
index ba1ba2bbba7d36b6cac8746f4b5bb4a48d2f6c7c..8519388cf37576021876ff8c321cc69a826cc9cc 100644 (file)
  * PERFORMANCE OF THIS SOFTWARE.
  */
 
-#include <fontconfig/fontconfig.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <unistd.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <errno.h>
 #ifdef HAVE_CONFIG_H
 #include <config.h>
 #else
 #define HAVE_GETOPT 1
 #endif
 
+#include <fontconfig/fontconfig.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <unistd.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <errno.h>
+
+#if defined (_WIN32)
+#define STRICT
+#include <windows.h>
+#define sleep(x) Sleep((x) * 1000)
+#undef STRICT
+#endif
+
 #ifndef HAVE_GETOPT
 #define HAVE_GETOPT 0
 #endif
@@ -222,7 +230,8 @@ scanDirs (FcStrList *list, FcConfig *config, char *program, FcBool force, FcBool
            ret++;
            continue;
        }
-       if (!force && FcDirCacheValid (dir) && FcDirCacheHasCurrentArch (dir))
+       if (!force && FcDirCacheValid (dir, config) && 
+           FcDirCacheHasCurrentArch (dir, config))
        {
            if (verbose)
                printf ("skipping, %d fonts, %d dirs\n",
@@ -236,14 +245,12 @@ scanDirs (FcStrList *list, FcConfig *config, char *program, FcBool force, FcBool
 
            /* This is the only reason we can't combine 
             * Valid w/HasCurrentArch... */
-            if (!FcDirCacheValid (dir))
+            if (!FcDirCacheValid (dir, config))
                 if (!FcDirCacheUnlink (dir, config))
                     ret++;
 
            if (!FcDirSave (set, subdirs, dir))
            {
-                if (!ret)
-                    fprintf (stderr, "Caches are currently saved to \"%s\"\n", PKGCACHEDIR);
                fprintf (stderr, "Can't save cache for \"%s\"\n", dir);
                ret++;
            }