On Tue, 2005-11-29 at 01:13 -0500, Patrick Lam wrote: > Matthias Clasen wrote: > > On Tue, 2005-11-29 at 00:19 -0500, Patrick Lam wrote: > > > >>Matthias Clasen wrote: > >> > >>>The globs change clearly has a big effect. The results of > >>>fc-list | wc -l on my system are as follows: > >>> > >>>cvs20051119: 143 > >>>before globs change: 148 > >>>current cvs: 0 > >> > >>Hmm, there shouldn't be a difference between before globs change and > >>cvs20051119. However, 0 is a number I'm not reproducing. Can you check > >>your config and try rebuilding your caches? > > > > I just rebuilt my caches with fc-cache from current cvs, and fc-cat > > lists the contents of the cache files as expected. Still, fc-list comes > > up empty. > > For no good reason I had at one point 0 fonts as well. However, I've > updated current CVS with a couple of changes, using a more stable API to > get the font filenames. Unfortunately, this is going to hurt the perf > of FcInit. Anyway, I think that the code is now actually correct, and > seems to work fine for me at least. Rebuilding caches doesn't seem to > help, but recompiling everything might help. > > Globs now check both the full filename and the pathname to see whether > or not they belong to a rejection glob. This can actually be greatly > sped up, come to think of it. The per-directory rejection glob only > needs to be done once per cache directory. Unfortunately, the full > filename still has to be checked; I don't really see a clean way around > that. I'll do the per-directory optimization momentarily; consider it > done. > > Please tell me about how fc-list behaves for you after this change. (I > also compiled with -O0 -g, but that *shouldn't* make a difference. > Perhaps the make clean did.) > Seems to work fine now, thanks. I'll push a cvs snapshot into rawhide tomorrow, for some wider testing. Matthias