[Fontconfig] Status about fontconfig CVS regarding cache handling

Frederic Crozat fcrozat at mandriva.com
Fri Feb 17 06:07:02 PST 2006


Le jeudi 16 février 2006 à 12:54 -0500, Patrick Lam a écrit :
> Frederic Crozat wrote:
> > On my test case, cache was created with fontconfig 2.3.92 (ie before the
> > switch to /var/cache/fontconfig). Since fonts didn't change, cache
> > "might" look valid but I doubt it does since cache format has changed
> > since 2.3.92 ..
> 
> I haven't tried such a cache.  But I did change something in
> FcDirCacheHasCurrentArch so that it'll properly detect changes in MAGIC
> now.  It might also fix your problem.  Let me know if it helps.

Not really, now it crashes when starting fc-cache -v :

Program received signal SIGSEGV, Segmentation fault.
0xb7f86c8a in FcCharSetSerialize (bank=1278151997, c=0xb7fc8bfc)
    at fccharset.c:1427
1427            memcpy (&leaves[bi][charset_leaf_ptr++],
(gdb) bt
#0  0xb7f86c8a in FcCharSetSerialize (bank=1278151997, c=0xb7fc8bfc)
    at fccharset.c:1427
#1  0xb7f95a77 in FcValueListSerialize (bank=1278151997, pi=0xb7fc5e9c)
    at fcpat.c:1808
#2  0xb7f9ab02 in FcPatternSerialize (bank=1278151997, old=0xb7fc4004)
    at fcpat.c:1621
#3  0xb7f8d812 in FcFontSetSerialize (bank=1278151997, s=0x80573d8)
    at fcfs.c:144
#4  0xb7f7fdc2 in FcDirCacheProduce (set=0x80573d8, metadata=0xbfde311c)
    at fccache.c:1209
#5  0xb7f80478 in FcDirCacheWrite (set=0x80573d8, dirs=0x804b190,
dir=Variable "dir" is not available.
)
    at fccache.c:1271
#6  0xb7f89d1b in FcDirSave (set=0x0, dirs=0x0, dir=0x0) at fcdir.c:223
#7  0x08048ffc in scanDirs (list=0x804e038, config=0x804b008,
    program=0xbfde39a3 "/usr/bin/fc-cache", force=0, really_force=0,
verbose=1)
    at fc-cache.c:241
#8  0x0804905f in scanDirs (list=0x804e048, config=0x804b008,
    program=0xbfde39a3 "/usr/bin/fc-cache", force=0, really_force=0,
verbose=1)
    at fc-cache.c:259
#9  0x0804905f in scanDirs (list=0x804dff8, config=0x804b008,
    program=0xbfde39a3 "/usr/bin/fc-cache", force=0, really_force=0,
verbose=1)
    at fc-cache.c:259
#10 0x08049602 in main (argc=2, argv=0xbfde3424) at fc-cache.c:351
#11 0xb7c7be40 in __libc_start_main () from /lib/tls/libc.so.6
#12 0x08048cf1 in _start () at ../sysdeps/i386/elf/start.S:119

> > Thanks. I was thinking removing fonts.cache-1 might be a good idea for
> > people who will migrate to 2.4.0 (when it is released) so old cache
> > don't stay on harddrive. But it might be a problem if directories are
> > used with programs using fontconfig 2.2.x and 2.4.x at the same time.
> 
> It's totally valid to have fontconfig 2.2 at the same time on some
> machines that mount the same filesystem, so I guess that we should not
> remove fonts.cache-1 files.

Ok, it was just an idea to clean people harddrive when needed ;)

-- 
Frederic Crozat <fcrozat at mandriva.com>
Mandriva



More information about the Fontconfig mailing list