[Fontconfig] Re: Crash when non-existing directories are referenced in ~/.fonts.cache

Matthias Clasen mclasen at redhat.com
Fri Jan 27 07:19:24 PST 2006


On Fri, 2006-01-27 at 00:53 -0500, Patrick Lam wrote:
> Ronny V. Vindenes wrote:
> > Something broke badly in this commit - fc-match or any app using fc now
> > loops with "Fontconfig error: Cannot load default config file" untill
> > they segfault. Reverting to the previous commit things work fine (and
> > fc-cache no longer creates broken caches - yay!).
> 
> Oops, just because fc-cache works doesn't mean that everything else does.
> 
> I've committed a fix for fontconfig-using applications.
> 
> make check still fails, but I'll take a look at that later.  I think the
> problem is that the global cache doesn't record all subdirectories properly.
> 
> pat

With current cvs, fc-cat is still busted:

> rm ~/.fonts.cache-2
> fc-list :
> ls -l ~/.fonts.cache-2
-rw------- 1 mclasen mclasen 141434 Jan 27 10:13 /home/boston/mclasen/.fonts.cache-2
> fc-cat ~/.fonts.cache-2 | wc -l
144

> fc-list :
> ls -l ~/.fonts.cache-2
-rw------- 1 mclasen mclasen 32768 Jan 27 10:03 /home/boston/mclasen/.fonts.cache-2
> fc-cat ~/.fonts.cache-2 
[fc-cat goes in an infinite loop]


It seems to me that all the recent breakage is due to the global cache. 
It just complicates the caching logic a lot. Would be it be too hard to just demand
fc-cache being run after installing new fonts ? We do that for everything else thats
cached, like icon themes, mime data, etc...

Matthias



More information about the Fontconfig mailing list