diff --git a/fc-cat/fc-cat.c b/fc-cat/fc-cat.c index f0131b6..a1dc848 100644 --- a/fc-cat/fc-cat.c +++ b/fc-cat/fc-cat.c @@ -342,14 +342,19 @@ main (int argc, char **argv) int j; FcChar8 *cache_file = NULL; struct stat file_stat; - + + /* reset errno */ + errno = 0; if (FcFileIsDir (arg)) cache = FcDirCacheLoad (arg, config, &cache_file); else cache = FcDirCacheLoadFile (arg, &file_stat); if (!cache) { - perror ((char *) arg); + if (errno != 0) + perror ((char *) arg); + else + fprintf (stderr, "%s: Unable to load the cache: %s\n", argv[0], arg); ret++; continue; }