src/fccache.c | 2 +- src/fcdir.c | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) New commits: commit a76b95105ca26c600279b2daf4bd43b37a918823 Author: Akira TAGOH <akira@xxxxxxxxx> Date: Sat Feb 10 02:15:45 2024 +0900 Fix undesired unref of FcConfig on Win32 diff --git a/src/fccache.c b/src/fccache.c index cebbb81..54f76ac 100644 --- a/src/fccache.c +++ b/src/fccache.c @@ -106,8 +106,8 @@ FcDirCacheDeleteUUID (const FcChar8 *dir, FcStrFree (target); bail: FcStrFree (d); -#endif FcConfigDestroy (config); +#endif return ret; } commit c22908828fb2dbfdf38733d119adc1cf5fe00173 Author: Akira TAGOH <akira@xxxxxxxxx> Date: Sat Feb 10 00:20:54 2024 +0900 Clean up .uuid files with fc-cache -f too .uuid file was obsoleted >5 years ago and it was supposed to be cleaned up by fc-cache -r but not -f. This change tries to clean it up by fc-cache -f. https://bugzilla.redhat.com/show_bug.cgi?id=1761885 diff --git a/src/fcdir.c b/src/fcdir.c index 6f7b383..2e4fdc6 100644 --- a/src/fcdir.c +++ b/src/fcdir.c @@ -234,7 +234,7 @@ FcDirScanConfig (FcFontSet *set, if (FcDebug () & FC_DBG_SCAN) printf ("\tScanning dir %s\n", s_dir); - + d = opendir ((char *) s_dir); if (!d) { @@ -459,7 +459,10 @@ FcDirCacheRead (const FcChar8 *dir, FcBool force, FcConfig *config) /* Not using existing cache file, construct new cache */ if (!cache) + { + FcDirCacheDeleteUUID (dir, config); cache = FcDirCacheScan (dir, config); + } FcConfigDestroy (config); return cache;