2005-11-04 Patrick Lam * src/fcdir.c (FcDirScanConfig): Add test for validity of directory caches that somehow got lost (reported by make distcheck). 2005-11-04 Patrick Lam * ChangeLog: * README: * configure.in: * fontconfig/fontconfig.h: Bump version to 2.3.92. 2005-11-02 Patrick Lam * src/fcpat.c (FcPatternDuplicate): Fix argument ordering problem in call to FcPatternTransferFullFname. 2005-11-02 Patrick Lam * src/fcfreetype.c (FcFreetypeQuery): * src/fcpat.c (FcPatternDestroy, FcPatternDuplicate, FcPatternTransferFullFname): Fix warnings and embarrassing double-free error. 2005-11-02 Zhe Su reviewed by: plam * fonts.conf.in: Change the rule for artificial emboldening in fonts.conf.in. This enables the support for artificial emboldening included in cairo. 2005-11-02 Patrick Lam * src/fcpat.c (FcPatternDestroy, FcPatternTransferFullName): Don't zero out full names for FC_REF_CONSTANT fonts; also, duplicate full names when transferring, and free full names when freeing the associated font. Reported by Jinghua Luo. 2005-11-02 Patrick Lam * fc-cache/fc-cache.c (scanDirs): * src/fcpat.c (FcValueListSerialize): Revert the previous patch and commit the correct patch: I forgot a canonicalization in FcValueListSerialize, so that it would choke on already-serialized input files. Duh! 2005-11-02 Patrick Lam * fc-cache/fc-cache.c (scanDirs): Forcibly rescan a directory before writing a fresh local cache file for that directory, fixing the losing-fonts problem reported by Mike Fabian and also apparently the font cache file corruption. 2005-11-02 Patrick Lam * src/fccache.c (FcGlobalCacheLoad): Fix thinko: actually, the whole global cache is stale if the global cache is older than the (newest) config file. 2005-11-02 Patrick Lam * src/fccache.c (FcGlobalCacheLoad): * src/fccfg.c (FcConfigModifiedTime, FcConfigBuildFonts): * src/fcint.h: Declare the global cache of a directory's contents to be stale if the directory is newer than the (newest) configuration file. 2005-10-31 Patrick Lam * src/fcint.h: * src/fclist.c (FcListAppend): * src/fcmatch.c (FcFontRenderPrepare): * src/fcpat.c (FcPatternTransferFullFname, FcPatternDuplicate, FcPatternFreeze, FcPatternBaseFreeze): Copy the full pathname whenever duplicating an FcPattern; otherwise, applications continue breaking. 2005-10-31 Patrick Lam * fc-cat/fc-cat.c (FcCacheFileRead, main): * src/fcfreetype.c (FcFreeTypeQuery): Fix small memory error (tried to free argv); use basename and dirname correctly (they can modify their arguments). 2005-10-31 Patrick Lam * fc-cat/fc-cat.c: * src/fccache.c: * src/fcfreetype.c: * src/fcint.h: * src/fclist.c: * src/fcpat.c: Reinstate basename patch, but keep a hash table linking FcPatterns to their fully-qualified font names for clients' benefit. Clients only pay for the font names once they request the FC_FILE property from an FcPattern, but the font name is malloc'd at that point (i.e. not mmapped: that's impossible, since it may vary between machines.) Clients do have to pay for a copy of the path name per cache file. Note that FcPatternGetString now does some rewriting if you ask for an FC_FILE, appending the pathname as appropriate. 2005-10-31 Patrick Lam * src/fcfreetype.c (FcFreeTypeQuery): Revert basename patch, which breaks fontconfig clients on my system. 2005-10-25 Jinghua Luo reviewed by: plam * fontconfig/fonts.conf.in: * fontconfig/fontconfig.h: * src/fcdefault.c: * src/fcname.c: Add FC_EMBEDDED_BITMAP object type to tell Xft/Cairo whether to load embedded bitmaps or not. 2005-10-25 Patrick Lam * src/fcfreetype.c (FcFreeTypeQuery): Only add basename to patterns' FC_FILE element, not any part of the dirname. 2005-10-22 Patrick Lam * src/fcfreetype.c: Add some more consts, fixing more GCC4 warnings. 2005-10-22 Zhe Su reviewed by: plam Support localized font family and style names. This has been reported to break old apps like xfd, but modern (gtk+/qt/mozilla) apps work fine. 2005-10-21 Patrick Lam * src/fccache.c (FcGlobalCacheLoad): Destroy the global cache file if it's terminally broken. (reported by Mike Fabian) 2005-10-21 Patrick Lam * fc-list/fc-list.c (main): * src/fcname.c (FcNameUnparse, FcNameUnparseEscaped): * fontconfig/fontconfig.h: Prevent fc-list from escaping strings when printing them (reported by Matthias Clasen). 2005-10-20 Marcus Meissner reviewed by: plam * fontconfig/fontconfig.h: Add valist sentinel markup for FcObjectSetBuild and FcPatternBuild. 2005-10-14 Ross Burton reviewed by: plam * fc-glyphname/fc-glyphname.c: * src/fclang.c: Add consts to variables so as to move arrays into .rodata. 2005-10-14 Mike Fabian reviewed by: plam * src/fccache.c (FcDirCacheUnlink): Check existence of directory cache file before attempting to unlink. 2005-10-13 Patrick Lam * src/fccache.c (FcDirCacheUnlink): Fix flipped return value on unlink. (Reported by Mike Fabian) 2005-10-12 Patrick Lam * src/fccache.c: * src/fcdir.c (FcDirScanConfig): * src/fcint.h: When fc-cache is run without --force, use directory cache files to speed up fc-cache run time. (Reported by Mike Fabian) 2005-10-06 Patrick Lam * src/fcname.c (FcObjectToPtr): * src/fcpat.c (FcStrStaticName): Add padding to make valgrind and glibc not hate each other when calling strlen(). 2005-10-05 Simos Xenitellis reviewed by: plam & keithp * fonts.conf.in: Modify config file to use Greek fonts before Asian fonts with Greek glyphs. 2005-10-05 Christian Biesinger reviewed by: plam & keithp * src/Makefile.am: Use libtool -no-undefined flag on all platforms. 2005-10-05 Patrick Lam * src/fccache.c (FcCacheHaveBank): Implement move-to-front array for banks (perf regression reported by Ronny V. Vindenes). 2005-10-04 Patrick Lam * src/fccache.c (FcDirCacheValid, FcDirCacheUnlink, FcDirCacheHasCurrentArch): * fc-cache/fc-cache.c (scanDirs): * fontconfig/fontconfig.h: Add new API which unlinks directory caches and checks dir caches for existence of appropriate sections. Fix fc-cache to unlink stale cache files and save directory caches that lack relevant sections. 2005-10-03 Patrick Lam * src/fccache.c (FcDirCacheValid): Ensure that a directory cache has the appropriate section before reporting that it is valid (reported by Matthias Clasen).