+2006-02-13 Patrick Lam <plam@mit.edu>
+ * src/fcfreetype.c (FcFreeTypeQuery):
+
+ Fix memory leak in error condition code.
+
+2006-02-13 Mike Fabian <mfabian@suse.de>
+ reviewed by: plam
+ * src/fcfreetype.c (FcFreeTypeQuery):
+
+ Skip bitmap fonts which can't even get it together enough to
+ declare a family name; this appears to reproduce previous
+ fontconfig behaviour.
+
+2006-02-10 Takashi Iwai <tiwai@suse.de>
+ reviewed by: plam
+ * src/fccache.c (FcDirCacheOpen):
+
+ Try to open /var/cache/fontconfig/[hashed name] before
+ fonts.cache-2 in a directory, because /var/cache/fontconfig
+ failures ought to be fixable, unlike fonts.cache-2 failures,
+ which may leave you screwed.
+
+2006-02-10 Takashi Iwai <tiwai@suse.de>
+ reviewed by: plam
+ * src/fcmatch.c (FcFontSetMatch):
+
+ Use a tri-state to mark the fonts which didn't get blocked but
+ were just missing an element, to distinguish them from the
+ fonts that do match the element.
+
+2006-02-10 Takashi Iwai <tiwai@suse.de>
+ reviewed by: plam
+ * src/fcmatch.c (FcFontSetMatch):
+
+ Don't kill fonts because they don't declare an element that's
+ being matched on.
+
+2006-02-09 Patrick Lam <plam@mit.edu>
+ * src/fccache.c (FcGlobalCacheLoad, FcGlobalCacheSave,
+ FcDirCacheUnlink, FcDirCacheOpen, FcDirCacheWrite):
+
+ Define and pass O_BINARY to open if appropriate, for those
+ platforms that need it. Reported by Doodle.
+
+2006-02-09 Patrick Lam <plam@mit.edu>
+ * src/fccharset.c (FcCharSetNeededBytes, FcCharSetSerialize,
+ FcCharSetGetLeaf):
+
+ Fix problem with missing 'en' due to euro.patch: change
+ cache file format slightly to coincide with that generated
+ by fc-lang.
+
+2006-02-07 Patrick Lam <plam@mit.edu>
+ * src/fccache.c (FcCacheReadDirs):
+
+ Fix warning.
+
+2006-02-07 Patrick Lam <plam@mit.edu>
+ * src/fcdir.c (FcDirScanConfig):
+
+ Don't reject dirs that can't be normalized (fixes lilypond, and
+ is correct in the context of application font directories.)
+
+2006-02-07 Takashi Iwai <tiwai@suse.de>
+ reviewed by: plam
+
+ * src/fccache.c (FcCacheReadDirs):
+
+ Use normalized directory name exclusively in FcCacheReadDirs.
+
+2006-02-07 Dirk Mueller <dmueller@suse.com>
+ reviewed by: plam
+
+ * src/fcpat.c (FcValueHash, FcValueListHash, FcValueListEntCreate):
+
+ Perf optimizations. Inline FcValueCanonicalize,
+ reduce FcValueListPtrU usage, remove redundant cast.
+
+2006-02-07 Takashi Iwai <tiwai@suse.de>
+ reviewed by: plam
+
+ * src/fccharset.c (FcLangCharSetPopulate, FcCharSetInsertLeaf)
+ * fc-lang/fc-lang.c:
+
+ Fix missing FcCacheBankToIndex in FcCharSetInsertLeaf.
+ Declare extern for static arrays as arrays, not pointers.
+ (Part of the fix for 'fonts don't have en' issue after Euro patch.)
+
+2006-02-07 Dirk Mueller <dmueller@suse.com>
+ reviewed by: plam
+
+ * fc-lang/de.orth:
+ * fc-lang/el.orth:
+ * fc-lang/en.orth:
+ * fc-lang/es.orth:
+ * fc-lang/fi.orth:
+ * fc-lang/fr.orth:
+ * fc-lang/it.orth:
+ * fc-lang/nl.orth:
+ * fc-lang/pt.orth:
+
+ Add Euro sign to list of symbols required by European languages.
+
+2006-02-07 Patrick Lam <plam@mit.edu>
+ * src/fccache.c (FcCacheReadString):
+
+ Fix hidden variable warning.
+
+2006-02-07 Dirk Mueller <dmueller@suse.com>
+ reviewed by: plam
+
+ * src/fccache.c (FcCacheReadString, FcCacheSkipString):
+
+ Remove de-escaping logic because FcCacheWriteString
+ doesn't escape anyway. Do blockwise reading instead
+ of byte-wise for performance.
+
+2006-02-06 Patrick Lam <plam@mit.edu>
+ Takashi Iwai <tiwai@suse.de>
+
+ * src/fccache.c (FcCacheReadDirs, FcCacheRead):
+
+ Don't loop infinitely on recursive symlinks (client-side).
+
+2006-02-06 Takashi Iwai <tiwai@suse.de>
+ reviewed by: plam
+ * fc-cache/fc-cache.c (scanDirs, main):
+
+ Don't loop infinitely on recursive symlinks.
+
+2006-02-06 Takashi Iwai <tiwai@suse.de>
+ reviewed by: plam
+ * src/fccache.c (FcGlobalCacheLoad, FcGlobalCacheReadDir,
+ FcGlobalCacheDirFind, FcGlobalCacheUpdate,
+ FcGlobalCacheSave, FcCacheReadDirs):
+ * src/fcint.h:
+
+ Skip subdirs when skipping over stale bits of global cache.
+ Introduce state machine into FcGlobalCacheDir to avoid
+ doing inappropriate operations on global dir entries, e.g.
+ writing out an out-of-date cache entry.
+
+2006-02-06 Takashi Iwai <tiwai@suse.de>
+ reviewed by: plam
+ * src/fcdir.c (FcFileScanConfig):
+
+ Hoist FcFileIsDir check out of FcFileScanConfig loop.
+
+2006-02-06 Takashi Iwai <tiwai@suse.de>
+ reviewed by: plam
+
+ * src/fccfg.c (FcConfigInodeMatchFontDir, FcConfigAddFontDir,
+ FcConfigAddFontDirSubdirs, FcConfigNormalizeFontDir):
+
+ Don't rescan when trying to normalize a non-declared font dir.
+ Don't add font dirs multiple times (even if they're aliased).
+
+2006-02-06 Dirk Mueller <dmueller@suse.de>
+ reviewed by: plam
+
+ * src/fcfs.c (FcFontSetUnserialize):
+
+ Explain apples/oranges comparison and fix compilation error.
+
+2006-02-06 Dirk Mueller <dmueller@suse.de>
+ reviewed by: plam
+
+ * src/fcfs.c (FcFontSetUnserialize):
+
+ Insert check for integer overflow in # of fonts.
+
+2006-02-04 Behdad Esfahbod <behdad@cs.toronto.edu>
+ reviewed by: plam
+
+ * doc/Makefile.am:
+ * fc-cache/Makefile.am:
+ * fc-cat/Makefile.am:
+ * fc-list/Makefile.am:
+
+ Make 'make distcheck' work with automake 1.6.3.
+
+2006-02-03 Takashi IWAI <tiwai@suse.de>
+ reviewed by: plam
+
+ * fc-cat/fc-cat.c (FcCacheGlobalFileReadAndPrint, main,
+ FcCacheFileRead):
+
+ * src/fccache.c (FcGlobalCacheLoad, FcGlobalCacheSave,
+ FcDirCacheConsume, FcDirCacheWrite)
+ * src/fcxml.c (FcConfigMessage):
+
+ Check I/O call return values and eliminate unused variable
+ warnings.
+
+2006-02-03 Takashi Iwai <tiwai@suse.de>
+ reviewed by: plam
+
+ * src/fccfg.c (FcConfigAppFontAddFile, FcConfigAppFontAddDir)
+
+ Fix memory leak.
+
+2006-02-03 Dirk Mueller <dmueller@suse.de>
+ reviewed by: plam
+
+ * src/fcfs.c (FcFontSetUnserialize):
+
+ Gracefully handle the case where a cache asserts that it
+ has a negative number of fonts, causing overflow.
+
+2006-02-03 Patrick Lam <plam@mit.edu>
+ * src/fccache.c (FcDirCacheUnlink):
+
+ Fix double free in error case.
+
+2006-01-31 Behdad Esfabod <behdad@cs.utoronto.edu>
+ Stephan Kulow <coolo@suse.de>
+ reviewed by: plam
+
+ * fc-cache/Makefile.am:
+
+ Replace 'stamp' target with mkinstalldirs.
+
+2006-01-31 Mike Fabian <mfabian@suse.de>
+ reviewed by: plam
+
+ * src/fccache.c (FcGlobalCacheLoad):
+
+ Toast broken global cache files.
+
+2006-01-30 Patrick Lam <plam@mit.edu>
+ * src/fccache.c (FcGlobalCacheReadDir):
+
+ Actually use the directories that I added to the global cache.
+ Fixes 'make check'.
+
+2006-01-30 Mike Fabian <mfabian@suse.de>
+ reviewed by: plam
+
+ * fc-cache/fc-cache.c (scanDirs):
+
+ Don't stop scanning if a directory in fonts.conf doesn't
+ exist, because subsequent directories might exist.
+
+2006-01-30 Patrick Lam <plam@mit.edu>
+ * src/fccache.c (FcGlobalCacheLoad):
+
+ Make global cache work again after putting dir names into global
+ cache (I misplaced the recording of a file offset).
+
+2006-01-30 Patrick Lam <plam@mit.edu>
+ * fc-cat/fc-cat.c (FcCacheGlobalFileReadAndPrint):
+
+ Update fc-cat to handle subdir lists in global cache file.
+
+ * src/fccache.c (FcGlobalCacheLoad):
+
+ Another FcCacheReadString return value check.
+
+2006-01-30 Mike Fabian <mfabian@suse.de>
+ reviewed by: plam
+
+ * src/fccache.c (FcGlobalCacheLoad, FcDirCacheUnlink
+ FcDirCacheOpen, FcDirCacheRead, FcDirCacheWrite):
+
+ Make fccache more resilient to broken cache files by checking
+ return value of FcCacheReadString all the time.
+
+2006-01-30 Frederic Crozat <fcrozat@mandriva.com>
+ reviewed by: plam
+
+ * fc-match/fc-match.1:
+ * fc-lang/fc-lang.man:
+
+ Remove references to dead fontconfig(3) manpages in
+ other fontconfig manpages.
+
+2006-01-29 Behdad Esfabod <behdad@cs.utoronto.edu>
+ reviewed by: plam
+
+ * doc/fcpattern.fncs:
+
+ Fix world's tiniest typo in code example.
+
+2006-01-29 Mike Fabian <mfabian@suse.de>
+ reviewed by: plam
+
+ * src/fccache.c (FcGlobalCacheReadDir):
+
+ Fix global cache reads of subdirectories.
+
+2006-01-29 Patrick Lam <plam@mit.edu>
+ * doc/fcconfig.fncs:
+ Add documentation for FcConfigNormalizeFontDir.
+
+ * src/fccache.c (FcGlobalCacheDirDestroy, FcGlobalCacheLoad,
+ FcGlobalCacheUpdate, FcGlobalCacheSave):
+ * src/fcdir.c (FcDirScanConfig):
+ * src/fcint.h:
+
+ Write directory information to global caches to fix make check
+ (reported by Ronny V. Vindenes). This changes the global cache
+ format again.
+
+2006-01-27 Patrick Lam <plam@mit.edu>
+ * fc-cache/fc-cache.c (scanDirs):
+ * fontconfig/fontconfig.h:
+ * src/fcint.h:
+ * src/fccache.c (FcDirCacheValid, FcDirCacheHasCurrentArch):
+
+ Move FcConfigNormalizeFontDir call so that it doesn't result in
+ infinite recursion (reported by Ronny V. Vindenes).
+
+2006-01-26 Patrick Lam <plam@mit.edu>
+ * src/fccache.c (FcDirCacheValid, FcDirCacheHasCurrentArch):
+ * src/fccfg.c (FcConfigNormalizeFontDir):
+
+ Add a couple of missing normalizations to make fc-cache work
+ right; only scan subdirectories once.
+
+2006-01-26 Mike Fabian <mfabian@suse.de>
+ reviewed by: plam
+
+ * src/fcacache.c (FcGlobalCacheReadDir):
+
+ Don't crash on non-existant directories in global cache.
+
+2006-01-26 Patirck Lam <plam@mit.edu>
+ * src/fccache.c (FcGlobalCacheSave, FcDirCacheWrite):
+ * src/fccfg.c (FcConfigAddFontDirSubdirs, FcConfigNormalizeFontDir):
+ * src/fcdir.c (FcDirScanConfig):
+ * src/fcxml.c (FcEndElement):
+
+ Stop trampling the directory name when writing out caches.
+ (with Mike Fabian:) Beef up FcConfigNormalizeFontDir to scan
+ subdirs when necessary. Don't scan directories that can't be
+ normalized.
+
+2006-01-25 Patrick Lam <plam@mit.edu>
+ * src/fccache.c (FcDirCacheOpen, FcDirCacheWrite):
+ * src/fccfg.c (FcConfigEvaluate):
+ * src/fcfreetype.c (FcPatternAddWithBinding):
+
+ Fix additional memory leaks reported by Ronny V. Vindenes: don't
+ invoke FcValueSave on hashed static strings in
+ FcPatternAddWithBinding.
+
+ Add another st_dev check in FcDirCacheOpen.
+
+2006-01-24 James Su <james.su@gmail.com>
+ reviewed by: plam
+
+ * src/fcfreetype.c (FcFreeTypeIsExclusiveLang):
+ * fc-lang/zh_hk.orth:
+
+ Treat zh-hk fonts differently from zh-tw fonts. This patch may
+ cause fontconfig to treat A-X fonts differently from A-Y fonts;
+ please mail the fontconfig list if this causes any problems.
+
+2006-01-24 Patrick Lam <plam@mit.edu>
+ * src/fccache.c (FcDirCacheUnlink, FcDirCacheWrite):
+ * src/fcfreetype.c (FcFreeTypeQuery):
+
+ Fix memory leaks reported by Ronny V. Vindenes.
+
+2006-01-19 Andreas Schwab <schwab@suse.de>
+ reviewed by: plam
+
+ * src/fcpat.c (FcStrNeededBytes):
+
+ Fix for unaligned memory accesses.
+
+2006-01-18 Mike Fabian <mfabian@suse.de>
+ reviewed by: plam
+
+ * src/fcdir.c (FcDirScanConfig):
+
+ Properly order the FcConfigAddFontDir and FcConfigNormalizeFontDir
+ calls to avoid crashes.
+
+2006-01-14 Patrick Lam <plam@mit.edu>
+ * src/fccache.c (FcDirCacheConsume):
+
+ Fix segfault when consuming zero-length caches in fc-cat
+ (which has no config, so FcConfigAddFontDir shouldn't be called.)
+
+2006-01-14 Patrick Lam <plam@mit.edu>
+ * fc-cache/fc-cache.c (scanDirs):
+ * fontconfig/fontconfig.h:
+ * src/fccache.c (FcGlobalCacheReadDir, FcGlobalCacheUpdate,
+ FcGlobalCacheSave, FcDirCacheUnlink, FcDirCacheOpen):
+ * src/fccfg.c (FcConfigBuildFonts, FcConfigNormalizeFontDir):
+ * src/fcdir.c (FcDirScanConfig):
+ * src/fcint.h:
+
+ Compare device numbers as well as inodes.
+ Always normalize directory names before comparing them.
+
+2006-01-11 Mike Fabian <mfabian@suse.de>
+ reviewed by: plam
+
+ * fc-cat/fc-cat.c (FcCacheGlobalFileReadAndPrint):
+
+ Allocate extra space for appended '/' in directory name.
+
+2006-01-10 Patrick Lam <plam@mit.edu>
+ * src/fccache.c (FcDirCacheConsume, FcDirCacheOpen,
+ FcDirCacheValid, FcDirCacheHasCurrentArch,
+ FcDirCacheUnlink, FcDirCacheRead, FcDirCacheConsume):
+ * fc-cache/fc-cache.c (main):
+
+ Explicitly add font dirs to config.fontDirs even if they're empty.
+ Set current config in fc-cache.c.
+ Fix treatment of cache directory as read from cache file; don't
+ use string equality to determine if we have the right file,
+ use inode equality.
+
+2006-01-09 Patrick Lam <plam@mit.edu>
+ * fc-cache/fc-cache.c (scanDirs):
+ * fc-cat/fc-cat.c (FcCacheGlobalFileReadAndPrint, FcCacheFileRead):
+ * src/fccache.c (FcGlobalCacheReadDir, FcCacheReadDirs,
+ FcDirCacheRead, FcDirCacheConsume, FcDirCacheWrite):
+ * src/fccfg.c (FcConfigNormalizeFontDir):
+ * src/fcdir.c (FcDirScanConfig):
+ * src/fcint.h:
+
+ Normalize font dirs by using the form, as given in fonts.conf, and
+ recorded in FcConfig's fontDirs string set, as canonical.
+
+ Actually update config.fontDirs as font directories are scanned.
+
+2006-01-08 James Su <james.su@gmail.com>
+ * src/fcmatch.c (FcFontSetMatch):
+
+ Fix matching bug when multiple elements match; don't use
+ the sum of all scores, but the best score.
+
+ Also more perf opts, e.g. evaluate best over all font sets
+ rather than on a per-set basis (and other changes).
+
+2006-01-08 Patrick Lam <plam@mit.edu>
+ * src/fccache.c (FcDirCacheConsume):
+
+ Properly skip past dir caches that contain zero fonts (as occurs
+ in global caches.) Reported by Mike Fabian.
+
+2006-01-06 Patrick Lam <plam@mit.edu>
+ * src/fcdbg.c (FcPatternPrint):
+
+ Print out full pathname in fc-match -v as well. Reported by
+ Frederic Crozat.
+
+2006-01-06 Mike Fabian <mfabian@suse.de>
+ reviewed by: plam
+
+ * src/fcname.c (FcNameParse):
+
+ Fix bug where fc-match crashes when given __DUMMY__ property to
+ match on.
+
+ (I added the __DUMMY__ string to enable callers of
+ FcObjectToPtrLookup to distinguish an error return from a
+ successful return. -PL)
+
+2006-01-05 Patrick Lam <plam@mit.edu>
+ * AUTHORS:
+
+ Add self to AUTHORS list.
+
+ * fc-cat/fc-cat.c (FcCacheGlobalFileReadAndPrint,
+ FcCacheFileRead, FcCachePrintSet, main):
+ * src/fccache.c (FcGlobalCacheLoad, FcGlobalCacheUpdate,
+ FcGlobalCacheSave, FcCacheNextOffset,
+ FcDirCacheHasCurrentArch, FcDirCacheRead,
+ FcDirCacheConsume, FcDirCacheWrite):
+ * src/fcint.h:
+ * src/fcpat.c (comment):
+
+ Minor change to global cache file format to fix fc-cat bug
+ reported by Frederic Crozat, and buglet with not globally caching
+ directories with zero fonts cached.
+
+2006-01-02 Lubos Lunak <l.lunak@suse.cz>
+ reviewed by: plam
+
+ * src/fccfg.c (FcConfigEvaluate):
+
+ Fix double-free which occurs because FcValueCanonicalize doesn't
+ create an extra copy of the returned value, it only canonicalizes
+ it.
+
+2006-01-02 Patrick Lam <plam@mit.edu>
+ * doc/fontconfig-user.sgml:
+
+ Fix version of .cache file (currently 1 -> currently 2). Reported
+ by Jim Osborn.
+
+2005-12-21 Jinghua Luo <sunmoon1997@gmail.com>
+ reviewed by: plam
+
+ * src/fcpat.c (FcPatternAddFullFname, FcPatternFindFullFname):
+
+ Shut up GCC warnings on amd.
+
+2005-12-20 Patrick Lam <plam@mit.edu>
+ * ChangeLog:
+ * README:
+ * configure.in:
+ * fontconfig/fontconfig.h:
+
+ Bump version to 2.3.93.
+
+2005-12-20 Patrick Lam <plam@mit.edu>
+ * src/fccharset.c (FcLangCharSetPopulate):
+ * src/fcint.h (FcCacheBankToIndex):
+
+ Avoid check on _fcBankId nullness and fix case where it used to
+ crash.
+
+2005-12-20 Patrick Lam <plam@mit.edu>
+ * src/fcxml.c (FcConfigParseAndLoad):
+
+ Use open instead of fopen (requested by Phil Race for Sun).
+
+2005-12-20 Patrick Lam <plam@mit.edu>
+ * src/fccache.c (FcDirCacheWrite);
+ * fc-cache/Makefile.am:
+
+ Fix GCC4 warning and Makefile brokenness for /var/cache/fontconfig
+ dir.
+
+2005-12-20 Patrick Lam <plam@mit.edu>
+ * src/fcfreetype.c (FcFreeTypeQuery):
+
+ Restore code to skip over PCF fonts that have no encoded
+ characters.
+ (We guess that a font is PCF by presence of the PIXEL_SIZE
+ BDF property.)
+
+2005-12-12 Patrick Lam <plam@mit.edu>
+ * src/fccache.c (FcDirCacheOpen, FcDirCacheWrite):
+
+ Read and write the original location as a fallback for the
+ hashed cache file locations. This is mostly for users to be
+ able to have per-directory cache files.
+
+2005-12-12 Patrick Lam <plam@mit.edu>
+ * fc-cache/fc-cache.c (scanDirs):
+ * fc-cache/Makefile.am:
+ * src/fccache.c (FcDirCacheHashName):
+
+ Improve error message when fc-cache can't write the cache. Add
+ missing slash. Reported by Behdad. Incorporate Behdad's patch to
+ create /var/cache/fontconfig when appropriate.
+
+2005-12-12 Behdad Esfahbod <behdad@cs.toronto.edu>
+ reviewed by: plam
+
+ * src/fcxml.c (FcConfigGetAttribute):
+
+ Fix crash reported by Frederic Crozat when using libxml2.
+
+2005-12-09 Patrick Lam <plam@mit.edu>
+ * INSTALL:
+ * configure.in:
+ * fc-cache/Makefile.am:
+ * fc-cat/Makefile.am:
+ * src/Makefile.am:
+ * fc-cat/fc-cat.c (FcCacheGlobalFileReadAndPrint, FcCacheFileRead):
+ * fontconfig/fontconfig.h (FC_CACHE_SUFFIX):
+ * src/fccache.c (FcCacheSkipString, FcGlobalCacheLoad,
+ FcGlobalCacheSave, FcCacheNextOffset, FcDirCacheValid,
+ FcDirCacheHasCurrentArch, FcDirCacheHashName,
+ FcDirCacheOpen, FcDirCacheRead, FcDirCacheWrite):
+
+ Migrate cache files from fonts directories to
+ /var/cache/fontconfig. This helps make fontconfig FHS-compliant,
+ but requires that all caches get rebuilt.
+
+ Also, autogen.sh now needs the additional parameter
+ --localstatedir=/var.
+
+2005-12-07 Patrick Lam <plam@mit.edu>
+ * src/fcpat.c (FcPatternAddString):
+
+ Because we've changed FcPatternAddString to use FcStrStaticName
+ and not FcValueSave, explicitly handle the case of a null string.
+
+2005-12-06 Patrick Lam <plam@mit.edu>
+ * fc-cat/fc-cat.c (FcCachePrintSet, FcCacheGlobalFileReadAndPrint):
+
+ Fix warnings.
+
+2005-12-05 Patrick Lam <plam@mit.edu>
+ * src/fcname.c (FcNameGetObjectType):
+
+ Don't assign types to user object names.
+
2005-12-05 Patrick Lam <plam@mit.edu>
* src/fcpat.c (FcValueDestroy, FcValueListDestroy, FcStrHashed):