+2006-08-04 Keith Packard (keithp@keithp.com)
+ reviewed by: plam
+
+ * configure.in:
+ * fonts.conf.in:
+ * fonts.dtd:
+ * fc-cache/fc-cache.c (scanDirs):
+ * fontconfig/fontconfig.h:
+ * src/Makefile.am:
+ * src/fcint.h:
+ * src/fccache.c (FcDirCacheValid, FcDirHasCurrentArch,
+ FcDirCacheUnlink, FcDirCacheBasename,
+ FcCacheReadDirs, FcDirCacheOpen, FcDirCacheRead,
+ FcMakeDirectory, FcDirCacheWrite):
+ * src/fccfg.c (FcConfigCreate, FcConfigDestroy, FcConfigAddCacheDir,
+ FcConfigGetCacheDirs):
+ * src/fcdir.c (FcDirScanConfig, FcDirSave):
+ * src/fcinit.c (FcInitFallbackConfig):
+ * src/fcxml.c (fcElementMap, FcEndElement):
+ * test/fonts.conf.in, test/run-test.sh:
+
+ Make cache directories configurable. Simplify and correct
+ some code which deals with per-directory caches.
+
+2006-07-19 Jon Burgess (jburgess@uklinux.net)
+ reviewed by: plam
+
+ * src/fccache.c (FcGlobalCacheDestroy):
+
+ Fix file-descriptor leak in FcGlobalCacheDestroy.
+
+2006-05-31 Yong Li (rigel863@gmail.com)
+ reviewed by: plam, Bedhad Esfahbod
+
+ * src/ftglue.c (_hb_ftglue_face_goto_table):
+
+ TrueType Collection table offsets are absolute, not relative.
+
+2006-04-27 Paolo Borelli (pborelli@katamail.com)
+ reviewed by: plam
+
+ * src/fcstr.c (FcStrCopy):
+
+ Make FcStrCopy slightly more efficient.
+
+2006-04-27 Patrick Lam <plam@mit.edu>
+ Keith Packard <keithp@keithp.com>
+ * src/fcstr.c (FcStrBufChar):
+
+ Reduce transient memory usage during config file parsing
+ by allocating smaller buffers (64 seems to be a magic number).
+
+2006-04-27 Keith Packard <keithp@keithp.com>
+
+ * src/fcinit.c: (FcMemReport):
+ * src/fcint.h:
+ * src/fcpat.c: (FcPatternFini):
+ * src/fcxml.c: (FcParsePatelt):
+ Eliminate pattern freezing
+
+2006-04-27 Keith Packard <keithp@keithp.com>
+ reviewed by: Patrick Lam <plam@mit.edu>
+
+ * src/fccache.c: (FcDirCacheUnlink), (FcDirCacheHashName),
+ (FcDirCacheOpen), (FcDirCacheWrite):
+ * src/fcfreetype.c: (FcFreeTypeQuery):
+ * src/fcint.h:
+ * src/fclist.c: (FcListAppend):
+ * src/fcmatch.c: (FcFontRenderPrepare):
+ * src/fcpat.c: (FcPatternDestroy), (FcPatternBaseFreeze),
+ (FcPatternFreeze), (FcPatternGet), (FcPatternDuplicate),
+ (FcStrUnserialize):
+ Make path names in cache files absolute (NB, cache format change)
+ Stop permitting cache files to be stored in font dirs.
+ Bump cache magic.
+ Don't include /fonts.cache-2 in cache hash construction.
+
+2006-04-25 Patrick Lam <plam@mit.edu>
+ * ChangeLog:
+ * README:
+ * configure.in:
+ * fontconfig/fontconfig.h:
+
+ Bump version to 2.3.95.
+
+2006-04-25 Behdad Esfahbod <behdad@cs.toronto.edu>
+ reviewed by: plam
+
+ * configure.in:
+ * src/Makefile.am:
+ * src/fcfreetype.c:
+
+ Fix the issues with GNU libiconv vs. libc iconv (which especially
+ appear on Solarii). Approach suggested by Tim Mooney.
+
+2006-04-24 Dominic Lachowicz <cinamod@hotmail.com>
+ reviewed by: plam
+
+ * src/Makefile.am:
+
+ Include $(top_srcdir), $(top_srcdir)/src before anything else.
+
+ * fc-cache/fc-cache.c, fc-cat/fc-cat.c, fc-match/fc-match.c:
+ * src/fccache.c, src/fccfg.c, src/fccharset.c, src/fcdbg.c:
+ * src/fcfreetype.c, src/fcfs.c, src/fcinit.c, src/fclist.c:
+ * src/fcmatch.c, src/fcmatrix.c, src/fcname.c, src/fcpat.c:
+ * src/fcstr.c, src/fcxml.c:
+
+ Shuffle order of includes for building out of srcdir on win32.
+
+2006-04-20 Patrick Lam <plam@mit.edu>
+ * src/fcmatch.c (FcSortWalk):
+
+ Prevent terrible perf regression by getting the if-condition
+ right (reported by Wouter Bolsterlee).
+
+2006-04-19 Patrick Lam <plam@mit.edu>
+ Dominic Lachowicz <cinamod@hotmail.com>
+
+ * src/fccache.c (FcDirCacheConsume):
+
+ Implement mmap-like code for Windows using MapViewOfFile.
+
+2006-04-19 Patrick Lam <plam@mit.edu>
+ * src/fccache.c (FcDirCacheConsume, FcCacheNextOffset):
+
+ Bail gracefully if the cache file does not contain enough data.
+
+2006-04-14 Patrick Lam <plam@mit.edu>
+ * fonts.conf.in:
+
+ Give the 'Standard Symbols L' match a strong (vs. weak) binding.
+
+2006-04-14 Patrick Lam <plam@mit.edu>
+ * src/fcname.c (FcObjectToPtrLookup):
+
+ Fix Gecko-exposed segfault from my last hack to
+ FcObjectToPtrLookup. Simplify code and get things straight.
+
+2006-04-14 Patrick Lam <plam@mit.edu>
+ * fonts.conf.in:
+
+ Actually, just add URW fonts as aliases for all of the PostScript
+ fonts. (reported by Miguel Rodriguez).
+
+2006-04-13 Patrick Lam <plam@mit.edu>
+ * fonts.conf.in:
+
+ Add an alias 'Standard Symbols L' for 'Symbol'.
+
+2006-04-12 Frederic Crozat <fcrozat@mandriva.com>
+ reviewed by: plam
+
+ * src/fcpat.c: (FcPatternFreeze):
+ Fix memory leak (Coverity defect #2089).
+
+ * src/fcfreetype.c: (GetScriptTags):
+ Ignore script if subtable is missing (Coverity defect #2088).
+
+2006-04-12 Patrick Lam <plam@mit.edu>
+ * src/fccfg.c (FcConfigSubstituteWithPat):
+
+ Fix possible null pointer dereference (Coverity defect #784)
+ and memory leak (Coverity defects #785, #786).
+
+2006-04-12 Patrick Lam <plam@mit.edu>
+ * src/fcmatch.c (FcSortWalk, FcFontSetSort):
+
+ Don't copy FcCharSet if we're going to throw it away anyway.
+ (Reported by Kenichi Handa).
+
+2006-04-11 Ming Zhao <ming@gentoo.org>
+ reviewed by: plam
+
+ * src/fcname.c (FcObjectToPtrLookup):
+
+ Fix bad behaviour on realloc resulting in crash.
+
+2006-04-11 Patrick Lam <plam@mit.edu>
+ * src/fccache.c (FcGlobalCacheReadDir):
+
+ Don't crash if config is null (Coverity defect #984).
+
+2006-04-11 Frederic Crozat <fcrozat@mandriva.com>
+ reviewed by: plam
+
+ * src/fccharset.c (FcCharSetPutLeaf):
+ * src/fclang.c (FcNameUnparseLangSet):
+
+ Missing bits from previous patches.
+
+ * src/fccharset.c (FcCharSetSubtractCount):
+ Remove extra semi-colon.
+
+ * src/fccfg.c (FcConfigBuildFonts):
+ Fix memory leak in error case (Coverity defects #776, #985).
+
+ * src/fcxml.c (FcPopBinary, FcParsePatelt, FcParsePattern):
+ Fix memory leaks (Coverity defects #779, #781)
+ and memory use after free (Coverity defect #780).
+
+2006-04-11 Patrick Lam <plam@mit.edu>
+ * src/fccharset.c (FcCharSetPutLeaf):
+
+ Properly convert static charsets to dynamic charsets.
+
+2006-04-11 Frederic Crozat <fcrozat@mandriva.com>
+ reviewed by: plam
+
+ * src/fcpat.c: (FcValueListEntCreate, FcPatternBaseFreeze,
+ FcPatternFreeze):
+ Fix memory leak in error case (Coverity defects #1820, #1821, #1822).
+
+ * src/fclang.c: (FcNameUnparseLangSet):
+ Fix memory leak (Coverity defect #1819).
+
+ * fc-lang/fc-lang.c: (scan):
+ prevent crash when invalid include line is parsed (Coverity defect
+ #763).
+
+ * fc-cat/fc-cat.c: (FcCacheFileRead):
+ Fix potential null pointer access (Coverity defect #1804).
+
+ * src/fcname.c: (FcObjectUnserialize):
+ Remove dead code (Coverity defect #1194).
+
+ * src/fcfreetype.c: (GetScriptTags):
+ Prevent potential null pointer access (Coverity defect #767),
+ ensure error value is read (Coverity defect #1195).
+
+2006-04-11 Behdad Esfahbod <behdad@cs.toronto.edu>
+ reviewed by: plam
+
+ * doc/Makefile.am:
+
+ Survive missing docbook2pdf.
+
+2006-04-10 Patrick Lam <plam@mit.edu>
+ * fc-case/fc-case.c:
+ * fc-glyphname/fc-glyphname.c:
+ * fc-lang/fc-lang.c:
+
+ Include more stub definitions to make HP-UX's C compiler happy.
+
+2006-04-10 Patrick Lam <plam@mit.edu>
+ * src/fcname.c (FcObjectUnserialize):
+
+ Swap typo in order of ALIGN and dereferencing, fixing bug 6529.
+
+2006-04-10 Frederic Crozat <fcrozat@mandriva.com>
+ reviewed by: plam
+
+ * src/fccfg.c: (FcConfigEvaluate):
+ Fix string memory leak (Coverity defect #1823).
+
+ * src/fccache.c: (FcDirCacheUnlink):
+ Fix memory leak with hash collision (Coverity defect #1824).
+
+2006-04-10 Frederic Crozat <fcrozat@mandriva.com>
+ reviewed by: plam
+
+ * src/fccache.c: (FcGlobalCacheSave):
+ Don't leak header in non-error case (Coverity defect #1825).
+
+2006-04-10 Frederic Crozat <fcrozat@mandriva.com>
+ reviewed by: plam
+
+ * src/fcdir.c (FcDirScanConfig)
+ Don't leak in error cases (Coverity defects #777, #1826)
+
+2006-04-10 Frederic Crozat <fcrozat@mandriva.com>
+ reviewed by: plam
+
+ * src/fccache.c: (FcDirCacheWrite):
+ Fix double free (spotted by Coverity, CID #1965).
+
+ * fc-match/fc-match.c: (main):
+ Check if pattern is not null before using it (Coverity defect #1883).
+
+ * src/fccache.c: (FcDirCacheWrite):
+ Fix memory leak with hash collision (Coverity defect #1829).
+
+ * src/fccfg.c: (FcConfigBuildFonts):
+ Fix memory leak when bail cases (Coverity defect #1828).
+
+ * src/fccache.c: (FcGlobalCacheLoad):
+ Don't leak directory name (Coverity defect #1827).
+
+2006-04-07 Dominic Lachowicz <cinamod@hotmail.com>
+ reviewed by: plam
+ * fc-cache/Makefile.am:
+ * fc-cat/Makefile.am:
+ * fc-list/Makefile.am:
+ * fc-match/Makefile.am:
+
+ LD_ADD missing dependencies for binaries. Reported by
+ Edson Alves Pereira.
+
+2006-04-07 Patrick Lam <plam@mit.edu>
+ * src/fcint.h:
+ * fc-lang/fc-lang.c (main):
+
+ SGI compilation fixes (reported by Christoph Bauer):
+ 1) reorder union definition of _FcChar;
+ 2) omit .stats =.
+
+2006-04-07 Dominic Lachowicz <cinamod@hotmail.com>
+ reviewed by: plam
+ * configure.in:
+ * src/fccharset.c (FcCharSetNeededBytes):
+ * src/fcfs.c (FcFontSetNeededBytes):
+ * src/fcint.h:
+ * src/fclang.c (FcLangSetNeededBytesAlign):
+ * src/fcname.c (FcObjectNeededBytesAlign):
+ * src/fcpat.c (FcPatternNeededBytesAlign,
+ FcValueListNeededBytesAlign, FcStrNeededBytesAlign):
+
+ Portability fixes for HP-UX (reported by Christoph Bauer).
+ Replace '__inline__' by AC_C_INLINE and 'inline'.
+ Replace '__alignof__' by 'fc_alignof'.
+
+2006-04-07 Dominic Lachowicz <cinamod@hotmail.com>
+ reviewed by: plam
+ * src/fcint.h:
+
+ Move up #include of config.h.
+ Fail if neither inttypes.h nor stdint.h is available.
+ Fixes bug 6171.
+
+2006-04-07 Dominic Lachowicz <cinamod@hotmail.com>
+ Patrick Lam <plam@mit.edu>
+ * configure.in:
+ * fc-cache/fc-cache.c:
+ * fc-cat/fc-cat.c:
+ * src/fccache.c (FcGlobalCacheSave, FcCacheNextOffset,
+ FcDirCacheConsume, FcDirCacheProduce,
+ FcDirCacheWrite, FcCacheMachineSignature):
+ * src/fcfreetype.c (FcFreeTypeQuery):
+ * src/fontconfig.def.in:
+
+ Make fontconfig compile under MinGW:
+ 1) remove unneeded #includes;
+ 2) make use of mmap and sysconf conditional;
+ 3) replace rand_r by srand/rand if needed;
+ 4) use chsize instead of ftruncate; and
+ 5) update libtool exports file
+
+2006-04-07 Patrick Lam <plam@mit.edu>
+ * src/fcdir.c (FcDirScanConfig):
+
+ Eliminate warning.
+
+2006-04-06 Patrick Lam <plam@mit.edu>
+ * fc-match/.cvsignore:
+ * fc-match/Makefile.am:
+ * fc-match/fc-match.sgml:
+
+ Update documentation for fc-match (SGML-ize it).
+ (reported by Ilya Konstantinov)
+
+2006-04-06 Diego Pettenò <flameeyes@gentoo.org>
+ reviewed by: plam
+ * src/fcdefault.c:
+ * src/fcpat.c:
+ * src/fcxml.c:
+
+ Reduce amount of dirty rss by const'ing some data structures.
+
+2006-04-06 Patrick Lam <plam@mit.edu>
+ * fc-cache/Makefile.am:
+
+ Don't fail if we can't create or remove
+ $(pkgcachedir) i.e. /var/cache/fontconfig.
+ (reported by Quanah Gibson-Mount).
+
+2006-04-06 Kjartan Maraas <kmaraas@gnome.org>
+ reviewed by: plam
+ * fc-case/fc-case.c:
+ * fc-glyphname/fc-glyphname.c:
+ * fc-lang/fc-lang.c (main):
+ * fc-match/fc-match.c:
+ * src/fccache.c (FcGlobalCacheSave, FcCacheSkipToArch,
+ FcDirCacheWrite):
+ * src/fcfreetype.c (FcFreeTypeQuery):
+ * src/fclang.c (FcFreeTypeLangSet):
+ * src/fcxml.c:
+
+ Fix intel compiler warnings: make many variables static,
+ eliminate duplicate names, reduce variable scopes, unsigned/signed
+ printf formatting.
+
+2006-03-24 Mike Fabian <mfabian@suse.de>
+ reviewed by: plam
+ * src/fccache.c (FcGlobalCacheLoad, FcCacheSkipToArch):
+
+ Fix multiarch support (don't destroy multiarch files!)
+
+2006-03-24 Patrick Lam <plam@mit.edu>
+ * configure.in:
+
+ Require pkg-config. (Thanks Behdad;
+ better solution wanted for libxml2 detection!)
+
+2006-03-22 Patrick Lam <plam@mit.edu>
+ * src/fcatomic.c:
+
+ On Windows, unlink before rename. Reported by Tim Evans.
+
+2006-03-15 Patrick Lam <plam@mit.edu>
+ * fc-lang/ab.orth:
+ * fc-lang/ibo.orth:
+
+ Fix typos in orth files. Reported by Denis Jacquerye.
+
+2006-03-08 Patrick Lam <plam@mit.edu>
+ * Makefile.am:
+ * config/config.guess:
+ * config/config.sub:
+
+ Fix Makefile.am for removal of debian/ directory.
+
+2006-03-08 Patrick Lam <plam@mit.edu>
+ * .cvsignore
+
+ Ignore debian/ directory for CVS.
+
+2006-03-08 Patrick Lam <plam@mit.edu>
+ * debian/*
+
+ Now remove debian/ directory.
+
+2006-03-08 Patrick Lam <plam@mit.edu>
+ * debian/po/*
+
+ Remove debian/ directory from sources. See Debian's subversion
+ server at svn://svn.debian.org/pkg-freedesktop/trunk/fontconfig
+ instead.
+
+2006-03-08 Denis Jacquerye <moyogo@gmail.com>
+ reviewed by: plam
+
+ * fc-lang/ln.orth:
+ * fc-lang/iso639-1, fc-lang/iso639-2:
+
+ Add orthography for Lingala.
+
+2006-03-08 Carl Worth <cworth@cworth.org>
+ reviewed by: keithp
+
+ * conf.d/Makefile.am:
+ * conf.d/10LohitGujarati.conf:
+
+ Add a configuration file that disables hinting for the Lohit
+ Gujarati font (since the hinting distort some glyphs quite badly).
+
+2006-03-08 Egmont Koblinger <egmont@uhulinux.hu>
+ reviewed by: plam
+
+ * src/fcdir.c (FcDirScanConfig):
+
+ Sort directory entries while scanning them from disk;
+ prevents Heisenbugs due to file ordering in a directory.
+
+2006-03-07 Behdad Esfahbod <behdad@cs.toronto.edu>
+ reviewed by: plam
+
+ * src/fcfreetype.c (GetScriptTags):
+ * src/ftglue.c, src/ftglue.h:
+
+ Remove stuff we don't use, make get_{char,short,long} functions
+ of ftglue macros to be inlined.
+
+ * src/fcint.h:
+ * src/fcname.c (FcObjectSerialize):
+
+ Code cleanups (excess prototype, old-style function definition).
+
+2006-03-05 Patrick Lam <plam@mit.edu>
+ * src/fcpat.c (FcPatternGetString):
+
+ Because we hacked FcPatternGet, we don't really need to expand the
+ filename again in FcPatternGetString.
+
+2006-03-05 Patrick Lam <plam@mit.edu>
+ * src/fcpat.c (FcPatternGetString, FcPatternGet):
+
+ Ok, so some people (wine!) use FcPatternGet to fetch FC_FILE.
+ Make that work. Reported by Bernhard Rosenkraenzer.
+
+2006-03-03 Patrick Lam <plam@mit.edu>
+ * src/fcint.h:
+
+ Include inttypes.h instead of stdint.h if appropriate.
+
+2006-03-03 Patrick Lam <plam@mit.edu>
+ * fc-cat/fc-cat.c (FcFileIsDir):
+ * fc-glyphname/fc-flyphname.c:
+
+ More stub definitions and remove FcFileIsDir from fc-cat.
+
+2006-03-03 Patrick Lam <plam@mit.edu>
+ * fc-case/fc-case.c:
+
+ Fix compilation on AIX with stub definitions (bug 6097).
+
+2006-03-03 Patrick Lam <plam@mit.edu>
+ * src/fccache.c (FcCacheSkipToArch, FcDirCacheProduce):
+ * src/fcfreetype.c (GetScriptTags):
+ * src/fcfs.c (FcFontSetDistributeBytes):
+ * src/fcpat.c (FcValueListEntCreate, FcValueListNeededBytes):
+
+ Get rid of C++-style comments.
+
+2006-03-03 Patrick Lam <plam@mit.edu>
+ * debian/changelog
+
+ Enable creation of 2.3.94 Debian packages.
+
+2006-03-02 Egmont Koblinger <egmont@uhulinux.hu>
+ reviewed by: plam
+
+ * src/fclang.c (FcCharSetForLang):
+
+ Fix suspicious return expression which causes junk
+ to be returned.
+
+2006-02-24 Patrick Lam <plam@mit.edu>
+ * ChangeLog:
+ * README:
+ * configure.in:
+ * fontconfig/fontconfig.h:
+
+ Bump version to 2.3.94.
+
+2006-02-24 Patrick Lam <plam@mit.edu>
+ * Makefile.am:
+
+ Fix placement of @s.
+
+2006-02-24 Patrick Lam <plam@mit.edu>
+ * conf.d/10-fonts-persian.conf:
+
+ Remove unconditional emboldening (per Behdad's instructions).
+
+ * Makefile.am:
+
+ Add @s to hide some echos.
+
+2006-02-24 Mike Fabian <mfabian@suse.de>
+ Takashi Iwai <tiwai@suse.de>
+ reviewed by: plam
+
+ * src/fcfreetype.c (GetScriptTags):
+
+ Fix double-free on error case.
+
+2006-02-21 Patrick Lam <plam@mit.edu>
+ * fc-lang/fc-lang.c (scan):
+
+ Strip \r and whitespace from input; fixes bug 3454.
+
+2006-02-21 Patrick Lam <plam@mit.edu>
+ * fc-lang/fc-lang.c (main):
+
+ Allocate large arrays statically in fc-lang to fix crashes under
+ MinGW/MSYS.
+
+2006-02-21 Diego Petten <flameeyes@gentoo.org>
+ * src/fcfreetype.c (FcFreeTypeCharIndex):
+
+ Pass the buck; make fontconfig not crash on pango badness.
+
+2006-02-21 Patrick Lam <plam@mit.edu>
+ * conf.d/10-fonts-persian.conf:
+
+ Use embeddedbitmap rather than rh_prefer_bitmap.
+
+2006-02-21 Paul Cornett <paulcor1@bullseye.com>
+ reviewed by: plam
+
+ * src/fccache.c (FcDirCacheWrite):
+ * src/fcdir.c (FcFileScanConfig):
+ * src/fcfreetype.c (FcStringInPatternElement):
+ * src/fcxml.c (FcParseFamilies):
+ * src/ftglue.c (ftglue_face_goto_table):
+
+ Eliminate redundancies.
+
+2006-02-21 Kjartan Maraas <kmaraas@gnome.org>
+ reviewed by: plam
+
+ * fc-list/fc-list.c (main):
+ * src/fcfreetype.c (FcFreeTypeCharSetAndSpacing):
+ * src/fcstr.c (FcStrStr):
+ * src/fcxml.c (FcConfigSaveAttr):
+
+ Eliminate unused vars reported by Intel's compiler.
+
+2006-02-21 Aiet Kolkhi <aietkolkhi@gmail.com>
+ reviewed by: plam
+
+ * fc-lang/ka.orth:
+
+ Remove one more archaic character.
+
+2006-02-21 Ross Burton <ross@burtonini.com>
+ reviewed by: plam, keithp
+
+ * src/fcxml.c (FcParsePatelt):
+
+ Freeze patterns created by configuration file for tiny
+ memory savings (every little bit helps).
+
+2006-02-21 Mike Fabian <mfabian@suse.de>
+ reviewed by: plam
+
+ * fc-cat/fc-cat.c (main):
+
+ Initialize fontconfig library in fc-cat to avoid segfault.
+
+2006-02-18 Patrick Lam <plam@mit.edu>
+ * fc-cache/fc-cache.c (scanDirs):
+ * src/fccache.c (FcCacheReadDirs):
+ * src/fcdir.c (FcDirScanConfig):
+
+ Fix the underlying cause of the below segfault (must usually
+ call FcDirCacheHasCurrentArch after FcDirCacheValid).
+
+2006-02-18 Patrick Lam <plam@mit.edu>
+ * src/fccache.c (FcDirCacheHasCurrentArch):
+
+ Fix triggering of segfault caused by misreading cache files
+ (reported by fcrozat).
+
+2006-02-17 Patrick Lam <plam@mit.edu>
+ * src/fcint.h (FC_CACHE_MAGIC):
+
+ Bump up magic version; we changed the binary format.
+
+2006-02-17 Patrick Lam <plam@mit.edu>
+ * fc-cat/fc-cat.c (main):
+
+ Enable fc-cat to print out old-style cache info when given a
+ directory name.
+
+2006-02-16 Patrick Lam <plam@mit.edu>
+ * src/fccache.c (FcDirCacheHasCurrentArch):
+
+ Deal correctly with changing FC_CACHE_MAGIC.
+
+2006-02-16 Patrick Lam <plam@mit.edu>
+ * fc-cache/fc-cache.c (usage, scanDirs, main):
+
+ Add -r --really-force option which blows away cache files and then
+ regenerates them.
+
+2006-02-16 Patrick Lam <plam@mit.edu>
+ * src/fccache.c (FcDirCacheUnlink, FcCacheCopyOld, FcDirCacheWrite):
+
+ Don't bail if fontconfig can't remove a dir cache file.
+ Skip the ID of a cache file when copying.
+ Eliminate 'source file too small' bug in FcDirCacheWrite.
+
+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 Patrick 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):
+
+ Don't free strings that have been returned from FcStrStaticName.
+
+2005-12-01 Patrick Lam <plam@mit.edu>
+ * fc-cat/fc-cat.c (FcCacheGlobalFileReadAndPrint, main):
+
+ Add codepath for reading global cache files as well.
+
+2005-12-01 Behdad Esfahbod <behdad@cs.toronto.edu>
+ reviewed by: plam
+
+ * conf.d/10-fonts.persian.conf:
+ * conf.d/Makefile.am:
+
+ Add config file for Persian fonts from Sharif FarsiWeb, Inc.
+
+2005-11-30 Behdad Esfahbod <behdad@cs.toronto.edu>
+ reviewed by: plam
+
+ * src/fcxml.c (FcConfigParseAndLoad):
+
+ Only add a config file to the set of config files once.
+
+2005-11-29 Patrick Lam <plam@mit.edu>
+ * src/fcint.h (FcCacheBankToIndex);
+
+ Fix segfault by guarding array dereference.
+
+2005-11-29 Dirk Mueller <dmueller@suse.de>
+ reviewed by: plam
+
+ * fc-lang/fc-lang.c:
+ * src/fccache.c (FcDirCacheConsume, FcCacheHaveBank,
+ FcCacheBankToIndex, FcCacheBankToIndexMTF,
+ FcCacheAddBankDir):
+ * src/fcint.h:
+
+ Refactor FcCacheBankToIndex into an inlineable part
+ (in fcint.h) which checks the front of the list and a
+ non-inlineable part which finds and moves the appropriate element
+ to the front of the list.
+
+2005-11-29 Patrick Lam <plam@mit.edu>
+ * src/fccfg.c (FcConfigBuildFonts):
+ * src/fccache.c (FcCacheReadDirs):
+
+ Make the perf guys hate me a bit less: hoist the directory-name
+ FcConfigAcceptFont check for cached fonts up to directory cache
+ read time, rather than running it for each font.
+
+2005-11-29 Patrick Lam <plam@mit.edu>
+ * src/fccfg.c (FcConfigBuildFonts):
+ * src/fcint.h:
+ * src/fcpat.c (FcPatternFindFullFname):
+
+ Don't make FcPatternFindFullFname available to fccfg, it's not
+ really safe. Instead go through FcPatternGetString (sorry,
+ perf guys.) Also, use globs for dirs as well.
+
+2005-11-28 Patrick Lam <plam@mit.edu>
+ * src/fccfg.c (FcConfigBuildFonts):
+
+ Fix segfault.
+
+2005-11-28 Patrick Lam <plam@mit.edu>
+ * src/fcint.h:
+ * src/fcpat.c (FcPatternFindFullFname):
+ * src/fccfg.c (FcConfigBuildFonts):
+
+ Fix problem dating back at least to 2.3.2 where globs weren't
+ being applied to patterns loaded from a cache.
+
+2005-11-28 Patrick Lam <plam@mit.edu>
+ * doc/fontconfig-user.sgml:
+
+ Fix some obvious spelling mistakes.
+
+2005-11-28 Dirk Mueller <dmueller@suse.com>
+ Stephan Kulow <coolo@suse.de>
+ reviewed by: plam
+
+ * src/fcmatch.c (FcFontSetMatch):
+
+ Don't kill all fonts during match (oops!)
+
+
+2005-11-25 Dirk Mueller <dmueller@suse.com>
+ Stephan Kulow <coolo@suse.de>
+ Michael Matz <matz@suse.de>
+ reviewed by: plam
+
+ * src/fcmatch.c (FcObjectPtrToMatcher, FcCompareValueList,
+ FcFontSetMatch):
+
+ Rewrite FcFontSetMatch to a path-finding based algorithm, i.e.
+ inline FcCompare into FcFontSetMatch and reorder the
+ loops, adding a boolean array which blocks patterns from future
+ consideration if they're known to not be best on some past
+ criterion.
+
+2005-11-26 Dirk Mueller <dmueller@suse.com>
+ reviewed by: plam
+
+ * src/fcmatch.c (FcCompareValueList):
+
+ Fix incorrect merge.
+
+2005-11-25 Patrick Lam <plam@mit.edu>
+ * src/fcmatch.c (FcMatchObjectPtrsInit, FcCompareValueList):
+
+ Don't do random matching when bad objects are passed into
+ FcCompareValueList.
+
+2005-11-25 Patrick Lam <plam@mit.edu>
+ * src/fcint.h:
+ * src/fcpat.c (FcPatternEnsureBank, FcPatternDistributeBytes,
+ FcPatternSerialize, FcPatternUnserialize,
+ FcValueListEnsureBank, FcValueListDistributeBytes,
+ FcValueListUnserialize):
+
+ Rename fcpatterns, fcpatternelts, fcvaluelists to _fcPatterns,
+ _fcPatternElts, _fcValueLists for consistency.
+
+2005-11-25 Dirk Mueller <dmueller@suse.com>
+ reviewed by: plam
+
+ * src/fcmatch.c:
+
+ Pass the FcObjectPtr to FcCompareValueList, not the char * (perf).
+
+2005-11-25 Patrick Lam <plam@mit.edu>
+ * src/fcint.h:
+ * src/fccache.c (FcDirCacheConsume):
+ * src/fccharset.c (FcCharSetUnserialize):
+ * src/fcfs.c (FcFontSetUnserialize):
+ * src/fclang.c (FcLangSetUnserialize):
+ * src/fcname.c (FcObjectUnserialize):
+ * src/fcpat.c (FcStrUnserialize, FcValueListUnserialize,
+ FcPatternUnserialize):
+
+ Pass around FcCache *s to the Unserialize functions for extra
+ consistency (and less overhead, for what that's worth).
+
+2005-11-24 Dirk Mueller <dmueller@suse.com>
+ reviewed by: plam
+
+ * src/fcint.h:
+ * src/fcmatch.c (FcCompare*, FcFontSetSort):
+ * src/fcname.c (FcNameUnparseValue):
+
+ Inline the *PtrU functions to gain perf.
+ Remove unneeded params for the FcCompare* functions.
+
+2005-11-24 Dirk Mueller <dmueller@suse.com>
+ reviewed by: plam
+
+ * src/fcint.h, fontconfig/fontconfig.h:
+
+ Move FC_BANK_DYNAMIC, FC_BANK_FIRST to internal header.
+
+ * src/fcpat.c, src/fcint.h, src/fcname.c:
+
+ Check for type validity during FcPatternAddWithBinding, don't
+ verify type in FcFontMatch, don't call FcCanonicalize here
+ (which always does a deep copy).
+
+2005-11-24 Dirk Mueller <dmueller@suse.com>
+ reviewed by: plam
+
+ * src/fcmatch.c (FcCompareNumber, FcCompareString, FcCompareFamily):
+ * src/fcpat.c (FcPatternAddWithBinding):
+
+ Make FcCompareString and FcCompareFamily less expensive.
+ Only add a value for FC_FAMILY if the proposed value is a string.
+
+2005-11-24 Dirk Mueller <dmueller@suse.com>
+ reviewed by: plam
+
+ * src/fcdbg.c (FcDebug, FcDebugInit, FcPatternPrint):
+ * src/fcinit.c (FcInitLoadConfig, FcInitLoadConfigAndFonts):
+ * src/fcint.h (FcDebug):
+
+ Inline FcDebug invocations and only initialize once, in FcInit*.
+ Improve debug msg in FcPatternPrint.
+
+2005-11-23 Frederic Crozat <fcrozat@mandriva.com>:
+ reviewed by: plam
+
+ * fontconfig/fontconfig.h:
+ * fc-cat/fc-cat.c:
+
+ Minor code warning cleanups.
+
+2005-11-23 Frederic Crozat <fcrozat@mandriva.com>:
+ reviewed by: plam
+
+ * fc-match/fc-match.c (main):
+
+ Make getopt_long accept -s parameter to fc-match as well.
+
+2005-11-21 Dirk Mueller <dmueller@suse.com>
+ reviewed by: plam
+
+ * src/fcmatch.c (FcCompareValueList):
+
+ Manually perform inlining & partial redundancy elimination to
+ reduce calls to FcValueListPtrU.
+
+2005-11-21 Dirk Mueller <dmueller@suse.com>
+ reviewed by: plam
+
+ * src/fcstr.c (FcStrFree, FcStrCaseWalkerInit, FcStrCaseWalkerLong,
+ FcStrCaseWalkerNext, FcStrCaseWalkerNextIgnoreBlanks):
+
+ Only invoke strlen() when really necessary.
+
+2005-11-19 Matthias Clasen <mclasen@redhat.com>
+ reviewed by: plam
+
+ * src/Makefile.am:
+ * src/fcfreetype.c (FcGetPixelSize, FcFreeTypeQuery, GetScriptTags,
+ FcFontCapabilities):
+ * src/ftglue.c:
+ * src/ftglue.h:
+
+ Get rid of the use of freetype internal headers in fcfreetype.c,
+ since those headers will go away with freetype 2.2. Replace with
+ public domain ftglue code from pango. Note that the patch removes
+ some extra error checking in FT_Get_BDF_Property() and comments
+ out the skipping of empty pcf fonts.
+
+2005-11-19 Jinghua Luo <sunmoon1997@gmail.com>
+ reviewed by: plam
+
+ * fc-lang/fc-lang.c (main):
+
+ Further fix of patch from 2005-11-04: miscounted numbers count
+ (numbers_count); didn't strip duplicate numbers (langBankNumbers);
+ and leafidx_offset and numbers_offset in fcLangCharSets are wrong.
+
+ Removed leafidx_count and numbers_count since they are the same
+ and replaced them with offset_count.
+
+2005-11-18 Frederic Crozat <fcrozat@mandriva.com>
+ reviewed by: plam
+
+ * fc-cat/fc-cat.c (main):
+
+ Don't crash when fc-cat invoked with no arguments.
+
+2005-11-18 Frederic Crozat <fcrozat@mandriva.com>
+ reviewed by: plam
+
+ * src/fcxml.c (FcConfigSaveAttr, FcConfigParseAndLoad):
+
+ Fix invalid read access caused by premature free and
+ GCC4 warnings in libxml2 codepath.
+
+2005-11-17 Jinghua Luo <sunmoon1997@gmail.com>
+ reviewed by: plam
+
+ * src/fccfg.c (FcConfigValues):
+
+ List iteration not needed in FcConfigValues, since it's building
+ up the list itself; we can just strip FcVoid elements during
+ construction.
+
+2005-11-17 Patrick Lam <plam@mit.edu>
+ * src/fccfg.c (FcConfigValues):
+
+ Fix crash on invalid constants in config files (forgot to update
+ a pointer upon list iteration.)
+
+2005-11-17 Frederic Crozat <fcrozat@mandriva.com>
+ reviewed by: plam
+
+ * src/fcxml.c (FcTypecheckExpr):
+
+ Complain about invalid constants in config files.
+
+2005-11-17 Andreas Schwab <schwab@suse.de>
+ reviewed by: plam
+
+ * src/fccache.c (FcGlobalCacheSave):
+
+ Don't add current_arch_start more than once.
+
+2005-11-16 Patrick Lam <plam@mit.edu>
+ * src/fccharset.c (FcCharSetDistributeBytes, FcCharSetUnserialize):
+ * src/fcfs.c (FcFontSetUnserialize):
+ * src/fcname.c (FcObjectDistributeBytes, FcObjectUnserialize):
+ * src/fcpat.c (FcStrUnserialize):
+
+ Fix ordering of ALIGN with respect to saving block_ptr; add
+ another ALIGN to fcfs.c.
+
+2005-11-16 Patrick Lam <plam@mit.edu>
+ * src/fccache.c (FcDirCacheProduce)
+
+ Fix case where alignment bytes bumped up metadata->count
+ causing unwarranted failures to write cache files.
+ (Reported by Stephan Kulow).
+
+2005-11-16 Patrick Lam <plam@mit.edu>
+ * src/fccache.c (FcDirCacheProduce):
+ * src/fccharset.c (FcCharSetDistributeBytes):
+ * src/fcfs.c (FcFontSetDistributeBytes):
+ * src/fcint.h:
+ * src/fclang.c (FcLangSetDistributeBytes):
+ * src/fcname.c (FcObjectDistributeBytes):
+ * src/fcpat.c (FcPatternNeededBytes, FcValueListNeededBytes,
+ FcStrNeededBytes):
+
+ Add *NeededBytesAlign(), which overestimates the padding which is
+ later added by the new ALIGN macro. Fix alignment problems on
+ ia64 and s390 by bumping up block_ptr appropriately. (Earlier
+ version by Andreas Schwab).
+
+2005-11-16 Stephan Kulow <coolo@kde.org>
+ reviewed by: plam
+
+ * src/fccache.c:
+
+ Use sysconf to determine proper PAGESIZE value; this
+ appears to be POSIX-compliant. (reported by Andreas Schwab)
+
+2005-11-04 Patrick Lam <plam@mit.edu>
+ * fc-lang/fc-lang.c:
+ * src/fccharset.c:
+ * src/fcint.h:
+ * src/fclang.c:
+
+ Fix bug 2878 (excessive relocations at startup for charsets,
+ reported by Ross Burton): fc-lang/fc-lang now creates the
+ static form of the langset, not the dynamic form, so that
+ the charsets should now be in .rodata.
+
+2005-11-04 Patrick Lam <plam@mit.edu>
+ * src/fcdir.c (FcDirScanConfig):
+
+ Add test for validity of directory caches that
+ somehow got lost (reported by make distcheck).
+
+2005-11-04 Patrick Lam <plam@mit.edu>
+ * ChangeLog:
+ * README:
+ * configure.in:
+ * fontconfig/fontconfig.h:
+
+ Bump version to 2.3.92.
+
+2005-11-02 Patrick Lam <plam@mit.edu>
+ * src/fcpat.c (FcPatternDuplicate):
+
+ Fix argument ordering problem in call to FcPatternTransferFullFname.
+
+2005-11-02 Patrick Lam <plam@mit.edu>
+ * src/fcfreetype.c (FcFreetypeQuery):
+ * src/fcpat.c (FcPatternDestroy, FcPatternDuplicate,
+ FcPatternTransferFullFname):
+
+ Fix warnings and embarrassing double-free error.
+
+2005-11-02 Zhe Su <zsu@novell.com>
+ 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 <plam@mit.edu>
+ * 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 <plam@mit.edu>
+ * 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 <plam@mit.edu>
+ * 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 <plam@mit.edu>
+ * 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 <plam@mit.edu>
+ * 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 <plam@mit.edu>
+ * 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 <plam@mit.edu>
+ * 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 <plam@mit.edu>
+ * 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 <plam@mit.edu>
+ * src/fcfreetype.c (FcFreeTypeQuery):
+
+ Revert basename patch, which breaks fontconfig clients on my system.
+
+2005-10-25 Jinghua Luo <sunmoon1997@gmail.com>
+ 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 <plam@mit.edu>
+ * src/fcfreetype.c (FcFreeTypeQuery):
+
+ Only add basename to patterns' FC_FILE element, not any part of
+ the dirname.
+
+2005-10-22 Patrick Lam <plam@mit.edu>
+ * src/fcfreetype.c:
+
+ Add some more consts, fixing more GCC4 warnings.
+
+2005-10-22 Zhe Su <zsu@novell.com>
+ 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 <plam@mit.edu>
+ * src/fccache.c (FcGlobalCacheLoad):
+
+ Destroy the global cache file if it's terminally broken. (reported by
+ Mike Fabian)
+
+2005-10-21 Patrick Lam <plam@mit.edu>
+ * 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 <meissner@suse.de>
+ reviewed by: plam
+
+ * fontconfig/fontconfig.h:
+
+ Add valist sentinel markup for FcObjectSetBuild and FcPatternBuild.
+
+2005-10-14 Ross Burton <ross@burtonini.com>
+ 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 <mfabian@suse.de>
reviewed by: plam