Keith Packard wrote:
On Wed, 2006-05-03 at 23:09 -0400, Patrick Lam wrote:
I noticed one problem which occurs when you run fc-cache as root and
have HOME set to a user directory. I'll have more details (hopefully a
fix) when I next have free time on Friday or something. Right now I'm
preparing lecture notes...
I'm not quite sure what to do about that; one option is to strip all ~
relative path names when getuid() != geteuid() from the font path, cache
path and other configurable names.
I was thinking that we already bailed on writing out cache files in this
case though. In which case, the only issue is with sudo. One possible
fix here is to use getpwuid (getuid()) instead of getenv ("HOME").
We don't write global cache files in the getuid() != geteuid() case, but
we do write local cache files. So getpwuid(getuid()) seems like it
should work.
I've looked at the patch and it seems generally correct to me. Two
questions:
1. Why did you move the #include "fcint.h" to the end of the
include-block in fccfg.c? We fixed some problems on Windows by putting
it consistently at the beginning of the include block. There's a bug
about that somewhere.
2. Do we still need to do the check for mis-named cache files in
DirCacheUnlink? It seems like it wouldn't be a bad idea to
unconditionally blow away anything that's in the way of what we're
trying to unlink.
The patch also appears to work on my system, too, for what that's worth.
pat
_______________________________________________
Fontconfig mailing list
Fontconfig@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/fontconfig