Old cache file versions, or corrupted cache files should be removed when
cleaning cache directories with fc-cache. This only affects filenames which
match the fontconfig cache file format, so other files will be left alone.
cache = FcDirCacheLoadFile (file_name, &file_stat);
if (!cache)
cache = FcDirCacheLoadFile (file_name, &file_stat);
if (!cache)
- {
- fprintf (stderr, "%s: invalid cache file: %s\n", dir, ent->d_name);
- FcStrFree (file_name);
- ret = FcFalse;
- continue;
- }
- target_dir = FcCacheDir (cache);
- remove = FcFalse;
- if (stat ((char *) target_dir, &target_stat) < 0)
- printf ("%s: %s: missing directory: %s \n",
- dir, ent->d_name, target_dir);
+ printf ("%s: invalid cache file: %s\n", dir, ent->d_name);
- else if (target_stat.st_mtime > file_stat.st_mtime)
- if (verbose)
- printf ("%s: %s: cache outdated: %s\n",
- dir, ent->d_name, target_dir);
- remove = FcTrue;
+ target_dir = FcCacheDir (cache);
+ if (stat ((char *) target_dir, &target_stat) < 0)
+ {
+ if (verbose)
+ printf ("%s: %s: missing directory: %s \n",
+ dir, ent->d_name, target_dir);
+ remove = FcTrue;
+ }
+ else if (target_stat.st_mtime > file_stat.st_mtime)
+ {
+ if (verbose)
+ printf ("%s: %s: cache outdated: %s\n",
+ dir, ent->d_name, target_dir);
+ remove = FcTrue;
+ }