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 Keith Packard * 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 * src/fcinit.c: (FcMemReport): * src/fcint.h: * src/fcpat.c: (FcPatternFini): * src/fcxml.c: (FcParsePatelt): Eliminate pattern freezing 2006-04-27 Keith Packard reviewed by: Patrick Lam * 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 * ChangeLog: * README: * configure.in: * fontconfig/fontconfig.h: Bump version to 2.3.95. 2006-04-25 Behdad Esfahbod 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 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 * src/fcmatch.c (FcSortWalk): Prevent terrible perf regression by getting the if-condition right (reported by Wouter Bolsterlee). 2006-04-19 Patrick Lam Dominic Lachowicz * src/fccache.c (FcDirCacheConsume): Implement mmap-like code for Windows using MapViewOfFile. 2006-04-19 Patrick Lam * src/fccache.c (FcDirCacheConsume, FcCacheNextOffset): Bail gracefully if the cache file does not contain enough data. 2006-04-14 Patrick Lam * fonts.conf.in: Give the 'Standard Symbols L' match a strong (vs. weak) binding. 2006-04-14 Patrick Lam * 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 * 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 * fonts.conf.in: Add an alias 'Standard Symbols L' for 'Symbol'. 2006-04-12 Frederic Crozat 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 * src/fccfg.c (FcConfigSubstituteWithPat): Fix possible null pointer dereference (Coverity defect #784) and memory leak (Coverity defects #785, #786). 2006-04-12 Patrick Lam * 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 reviewed by: plam * src/fcname.c (FcObjectToPtrLookup): Fix bad behaviour on realloc resulting in crash. 2006-04-11 Patrick Lam * src/fccache.c (FcGlobalCacheReadDir): Don't crash if config is null (Coverity defect #984). 2006-04-11 Frederic Crozat 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 * src/fccharset.c (FcCharSetPutLeaf): Properly convert static charsets to dynamic charsets. 2006-04-11 Frederic Crozat 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 reviewed by: plam * doc/Makefile.am: Survive missing docbook2pdf. 2006-04-10 Patrick Lam * 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 * src/fcname.c (FcObjectUnserialize): Swap typo in order of ALIGN and dereferencing, fixing bug 6529. 2006-04-10 Frederic Crozat 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 reviewed by: plam * src/fccache.c: (FcGlobalCacheSave): Don't leak header in non-error case (Coverity defect #1825). 2006-04-10 Frederic Crozat reviewed by: plam * src/fcdir.c (FcDirScanConfig) Don't leak in error cases (Coverity defects #777, #1826) 2006-04-10 Frederic Crozat 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 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 * 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 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 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 Patrick Lam * 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 * src/fcdir.c (FcDirScanConfig): Eliminate warning. 2006-04-06 Patrick Lam * 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ò 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 * 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 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 reviewed by: plam * src/fccache.c (FcGlobalCacheLoad, FcCacheSkipToArch): Fix multiarch support (don't destroy multiarch files!) 2006-03-24 Patrick Lam * configure.in: Require pkg-config. (Thanks Behdad; better solution wanted for libxml2 detection!) 2006-03-22 Patrick Lam * src/fcatomic.c: On Windows, unlink before rename. Reported by Tim Evans. 2006-03-15 Patrick Lam * fc-lang/ab.orth: * fc-lang/ibo.orth: Fix typos in orth files. Reported by Denis Jacquerye. 2006-03-08 Patrick Lam * Makefile.am: * config/config.guess: * config/config.sub: Fix Makefile.am for removal of debian/ directory. 2006-03-08 Patrick Lam * .cvsignore Ignore debian/ directory for CVS. 2006-03-08 Patrick Lam * debian/* Now remove debian/ directory. 2006-03-08 Patrick Lam * 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 reviewed by: plam * fc-lang/ln.orth: * fc-lang/iso639-1, fc-lang/iso639-2: Add orthography for Lingala. 2006-03-08 Carl Worth 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 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 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 * 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 * 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 * src/fcint.h: Include inttypes.h instead of stdint.h if appropriate. 2006-03-03 Patrick Lam * 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 * fc-case/fc-case.c: Fix compilation on AIX with stub definitions (bug 6097). 2006-03-03 Patrick Lam * 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 * debian/changelog Enable creation of 2.3.94 Debian packages. 2006-03-02 Egmont Koblinger reviewed by: plam * src/fclang.c (FcCharSetForLang): Fix suspicious return expression which causes junk to be returned. 2006-02-24 Patrick Lam * ChangeLog: * README: * configure.in: * fontconfig/fontconfig.h: Bump version to 2.3.94. 2006-02-24 Patrick Lam * Makefile.am: Fix placement of @s. 2006-02-24 Patrick Lam * 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 Takashi Iwai reviewed by: plam * src/fcfreetype.c (GetScriptTags): Fix double-free on error case. 2006-02-21 Patrick Lam * fc-lang/fc-lang.c (scan): Strip \r and whitespace from input; fixes bug 3454. 2006-02-21 Patrick Lam * fc-lang/fc-lang.c (main): Allocate large arrays statically in fc-lang to fix crashes under MinGW/MSYS. 2006-02-21 Diego Petten * src/fcfreetype.c (FcFreeTypeCharIndex): Pass the buck; make fontconfig not crash on pango badness. 2006-02-21 Patrick Lam * conf.d/10-fonts-persian.conf: Use embeddedbitmap rather than rh_prefer_bitmap. 2006-02-21 Paul Cornett 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 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 reviewed by: plam * fc-lang/ka.orth: Remove one more archaic character. 2006-02-21 Ross Burton 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 reviewed by: plam * fc-cat/fc-cat.c (main): Initialize fontconfig library in fc-cat to avoid segfault. 2006-02-18 Patrick Lam * 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 * src/fccache.c (FcDirCacheHasCurrentArch): Fix triggering of segfault caused by misreading cache files (reported by fcrozat). 2006-02-17 Patrick Lam * src/fcint.h (FC_CACHE_MAGIC): Bump up magic version; we changed the binary format. 2006-02-17 Patrick Lam * 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 * src/fccache.c (FcDirCacheHasCurrentArch): Deal correctly with changing FC_CACHE_MAGIC. 2006-02-16 Patrick Lam * 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 * 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 * src/fcfreetype.c (FcFreeTypeQuery): Fix memory leak in error condition code. 2006-02-13 Mike Fabian 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 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 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 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 * 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 * 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 * src/fccache.c (FcCacheReadDirs): Fix warning. 2006-02-07 Patrick Lam * 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 reviewed by: plam * src/fccache.c (FcCacheReadDirs): Use normalized directory name exclusively in FcCacheReadDirs. 2006-02-07 Dirk Mueller reviewed by: plam * src/fcpat.c (FcValueHash, FcValueListHash, FcValueListEntCreate): Perf optimizations. Inline FcValueCanonicalize, reduce FcValueListPtrU usage, remove redundant cast. 2006-02-07 Takashi Iwai 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 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 * src/fccache.c (FcCacheReadString): Fix hidden variable warning. 2006-02-07 Dirk Mueller 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 Takashi Iwai * src/fccache.c (FcCacheReadDirs, FcCacheRead): Don't loop infinitely on recursive symlinks (client-side). 2006-02-06 Takashi Iwai reviewed by: plam * fc-cache/fc-cache.c (scanDirs, main): Don't loop infinitely on recursive symlinks. 2006-02-06 Takashi Iwai 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 reviewed by: plam * src/fcdir.c (FcFileScanConfig): Hoist FcFileIsDir check out of FcFileScanConfig loop. 2006-02-06 Takashi Iwai 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 reviewed by: plam * src/fcfs.c (FcFontSetUnserialize): Explain apples/oranges comparison and fix compilation error. 2006-02-06 Dirk Mueller reviewed by: plam * src/fcfs.c (FcFontSetUnserialize): Insert check for integer overflow in # of fonts. 2006-02-04 Behdad Esfahbod 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 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 reviewed by: plam * src/fccfg.c (FcConfigAppFontAddFile, FcConfigAppFontAddDir) Fix memory leak. 2006-02-03 Dirk Mueller 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 * src/fccache.c (FcDirCacheUnlink): Fix double free in error case. 2006-01-31 Behdad Esfabod Stephan Kulow reviewed by: plam * fc-cache/Makefile.am: Replace 'stamp' target with mkinstalldirs. 2006-01-31 Mike Fabian reviewed by: plam * src/fccache.c (FcGlobalCacheLoad): Toast broken global cache files. 2006-01-30 Patrick Lam * src/fccache.c (FcGlobalCacheReadDir): Actually use the directories that I added to the global cache. Fixes 'make check'. 2006-01-30 Mike Fabian 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 * 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 * 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 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 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 reviewed by: plam * doc/fcpattern.fncs: Fix world's tiniest typo in code example. 2006-01-29 Mike Fabian reviewed by: plam * src/fccache.c (FcGlobalCacheReadDir): Fix global cache reads of subdirectories. 2006-01-29 Patrick Lam * 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 * 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 * 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 reviewed by: plam * src/fcacache.c (FcGlobalCacheReadDir): Don't crash on non-existant directories in global cache. 2006-01-26 Patrick Lam * 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 * 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 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 * src/fccache.c (FcDirCacheUnlink, FcDirCacheWrite): * src/fcfreetype.c (FcFreeTypeQuery): Fix memory leaks reported by Ronny V. Vindenes. 2006-01-19 Andreas Schwab reviewed by: plam * src/fcpat.c (FcStrNeededBytes): Fix for unaligned memory accesses. 2006-01-18 Mike Fabian reviewed by: plam * src/fcdir.c (FcDirScanConfig): Properly order the FcConfigAddFontDir and FcConfigNormalizeFontDir calls to avoid crashes. 2006-01-14 Patrick Lam * 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 * 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 reviewed by: plam * fc-cat/fc-cat.c (FcCacheGlobalFileReadAndPrint): Allocate extra space for appended '/' in directory name. 2006-01-10 Patrick Lam * 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 * 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 * 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 * 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 * src/fcdbg.c (FcPatternPrint): Print out full pathname in fc-match -v as well. Reported by Frederic Crozat. 2006-01-06 Mike Fabian 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 * 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 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 * doc/fontconfig-user.sgml: Fix version of .cache file (currently 1 -> currently 2). Reported by Jim Osborn. 2005-12-21 Jinghua Luo reviewed by: plam * src/fcpat.c (FcPatternAddFullFname, FcPatternFindFullFname): Shut up GCC warnings on amd. 2005-12-20 Patrick Lam * ChangeLog: * README: * configure.in: * fontconfig/fontconfig.h: Bump version to 2.3.93. 2005-12-20 Patrick Lam * 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 * src/fcxml.c (FcConfigParseAndLoad): Use open instead of fopen (requested by Phil Race for Sun). 2005-12-20 Patrick Lam * src/fccache.c (FcDirCacheWrite); * fc-cache/Makefile.am: Fix GCC4 warning and Makefile brokenness for /var/cache/fontconfig dir. 2005-12-20 Patrick Lam * 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 * 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 * 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 reviewed by: plam * src/fcxml.c (FcConfigGetAttribute): Fix crash reported by Frederic Crozat when using libxml2. 2005-12-09 Patrick Lam * 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 * 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 * fc-cat/fc-cat.c (FcCachePrintSet, FcCacheGlobalFileReadAndPrint): Fix warnings. 2005-12-05 Patrick Lam * src/fcname.c (FcNameGetObjectType): Don't assign types to user object names. 2005-12-05 Patrick Lam * src/fcpat.c (FcValueDestroy, FcValueListDestroy, FcStrHashed): Don't free strings that have been returned from FcStrStaticName. 2005-12-01 Patrick Lam * fc-cat/fc-cat.c (FcCacheGlobalFileReadAndPrint, main): Add codepath for reading global cache files as well. 2005-12-01 Behdad Esfahbod 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 reviewed by: plam * src/fcxml.c (FcConfigParseAndLoad): Only add a config file to the set of config files once. 2005-11-29 Patrick Lam * src/fcint.h (FcCacheBankToIndex); Fix segfault by guarding array dereference. 2005-11-29 Dirk Mueller 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 * 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 * 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 * src/fccfg.c (FcConfigBuildFonts): Fix segfault. 2005-11-28 Patrick Lam * 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 * doc/fontconfig-user.sgml: Fix some obvious spelling mistakes. 2005-11-28 Dirk Mueller Stephan Kulow reviewed by: plam * src/fcmatch.c (FcFontSetMatch): Don't kill all fonts during match (oops!) 2005-11-25 Dirk Mueller Stephan Kulow Michael Matz 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 reviewed by: plam * src/fcmatch.c (FcCompareValueList): Fix incorrect merge. 2005-11-25 Patrick Lam * src/fcmatch.c (FcMatchObjectPtrsInit, FcCompareValueList): Don't do random matching when bad objects are passed into FcCompareValueList. 2005-11-25 Patrick Lam * 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 reviewed by: plam * src/fcmatch.c: Pass the FcObjectPtr to FcCompareValueList, not the char * (perf). 2005-11-25 Patrick Lam * 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 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 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 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 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 : reviewed by: plam * fontconfig/fontconfig.h: * fc-cat/fc-cat.c: Minor code warning cleanups. 2005-11-23 Frederic Crozat : 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 reviewed by: plam * src/fcmatch.c (FcCompareValueList): Manually perform inlining & partial redundancy elimination to reduce calls to FcValueListPtrU. 2005-11-21 Dirk Mueller reviewed by: plam * src/fcstr.c (FcStrFree, FcStrCaseWalkerInit, FcStrCaseWalkerLong, FcStrCaseWalkerNext, FcStrCaseWalkerNextIgnoreBlanks): Only invoke strlen() when really necessary. 2005-11-19 Matthias Clasen 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 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 reviewed by: plam * fc-cat/fc-cat.c (main): Don't crash when fc-cat invoked with no arguments. 2005-11-18 Frederic Crozat 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 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 * 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 reviewed by: plam * src/fcxml.c (FcTypecheckExpr): Complain about invalid constants in config files. 2005-11-17 Andreas Schwab reviewed by: plam * src/fccache.c (FcGlobalCacheSave): Don't add current_arch_start more than once. 2005-11-16 Patrick Lam * 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 * 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 * 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 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 * 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 * 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). 2005-09-29 Mathias Hasselmann reviewed by: plam * configure.in: * src/Makefile.am: * src/fcxml.c: Use libxml2 if requested (with --enable-libxml2) or if expat is not available. 2005-09-29 Patrick Lam * src/fccache.c (FcGlobalCacheSave, FcDirCacheWrite): Fix multi-arch cache files: compute the position for the block to be added using info from OrigFile, not NewFile. 2005-09-28 Patrick Lam * src/fccache.c (FcCacheMachineSignature): Cast results of sizeof() to unsigned int to get rid of warnings on x86_64 (thanks Matthias Clasen). 2005-09-27 Patrick Lam * src/fccache.c (FcGlobalCacheSave, FcCacheCopyOld, FcDirCacheWrite): Use FcAtomic to rewrite cache files. 2005-09-27 Patrick Lam * src/fccache.c (FcDirCacheWrite): Don't unlink the fonts.cache-2 file even if there's no data to write; just write an empty cache file. (thanks Lubos Lunak) 2005-09-27 Patrick Lam * src/fccache.c (FcDirCacheWrite): Allocate room for the subdirectory names in each directory cache. Thanks to James Cloos for finding and diagnosing this bug! 2005-09-22 Patrick Lam * fc-cache/fc-cache.sgml: * src/fccache.c (FcDirCacheWrite): * src/fccache.h (struct FcCache): Update documentation -- fc-cache's man page now says that you need to run fc-cache once per cached architecture; add some documentation to the FcCache structure. Make fc-cache write out fonts.cache-2 files for directories with no fonts (i.e. only subdirectories). 2005-09-22 Patrick Lam * doc/edit-sgml.c: * fc-cache/fc-cache.sgml: * fc-case/fc-case.c: * fc-glyphname/fc-glyphname.c: * src/fcdefault.c: * src/fcfreetype.c: * src/fcinit.c: * src/fcxml.c: More GCC 4 cleanups, due to Behhad Esfahbod . * Makefile.am: * configure.in: * fc-lang/fc-lang.c: * fontconfig/fcprivate.h: * fontconfig/fontconfig.h: * src/fccache.c: * src/fccfg.c: * src/fccharset.c: * src/fcdbg.c: * src/fcdir.c: * src/fcfs.c: * src/fcint.h: * src/fclang.c: * src/fclist.c: * src/fcmatch.c: * src/fcname.c: * src/fcpat.c: Implement new mmaped cache for font information. Bump so revision to 2.3.90. 2005-07-25 Keith Packard * doc/fontconfig-user.sgml: * fc-glyphname/fc-glyphname.c: (scan), (main): * fc-lang/fc-lang.c: (FcConfigHome): * fc-match/fc-match.c: (main): * src/fccfg.c: (FcConfigHome): * src/fcfreetype.c: (FcSfntNameTranscode), (FcSfntNameLanguage), (FcVendorMatch), (FcFreeTypeQuery), (FcFreeTypeCharSetAndSpacing), (addtag), (FcFontCapabilities): * src/fcpat.c: (FcValueListEntCreate): * src/fcstr.c: (FcStrCaseWalkerInit): * src/fcxml.c: (FcParsePatelt), (FcConfigParseAndLoadDir): Various GCC 4 cleanups for signed vs unsigned char Match only [0-9]*.conf files in {directory} elements to avoid loading *.rpmsave or .dpkg-old files. (otaylor) 2005-07-15 Carl Worth * src/fcint.h: * src/fcinit.c: (FcFini): * src/fcpat.c: (FcPatternFini): Rename FcPatternThawAll to FcPatternFini. * src/fcpat.c: (FcObjectStaticName), (FcObjectStaticNameFini): Pull the FcObjectStateName hash table out to file scope, and add FcObjectStaticNameFini so that FcFini will cleanup this hash table as well. * src/fcxml.c: (FcConfigParseAndLoad): Clear FILE* to NULL after fclose. 2005-06-16 Patrick Lam reviewed by: keithp * src/fccfg.c: (FcConfigCompareValue): Make FcOpNotContains use FcStrStr for strings so that it matches semantics for !FcOpContains. 2005-05-20 Keith Packard * debian/changelog: * debian/control: Move fontconfig source package to libs as per override 2005-05-20 Aiet Kolkhi reviewed by: Mike Fabian * fc-lang/ka.orth: The ka.orth file requires several characters which are not used anymore in modern Georgian and which are missing in the free Georgian TrueType fonts downloadable at: http://aiet.qartuli.net/docs/georgian_on_linux_en.php 2005-04-27 Keith Packard * README: * debian/changelog: Update date to real 2.3.2 release date. Fix change attributions 2005-04-27 Keith Packard * configure.in: Bump so revision for 2.3.2 * fc-cache/fc-cache.c: (scanDirs): Fix a few minor leaks in error cases. 2005-04-23 Keith Packard * README: * configure.in: * debian/changelog: * fontconfig/fontconfig.h: Update for version 2.3.2 2005-04-21 Keith Packard * debian/fontconfig.postinst: Don't force bitmap font enable in default configuration; allows users to override this in ~/.fonts.conf * debian/po/cs.po: * debian/po/da.po: * debian/po/de.po: * debian/po/es.po: * debian/po/fr.po: * debian/po/ja.po: * debian/po/nl.po: * debian/po/pt.po: * debian/po/pt_BR.po: * debian/po/templates.pot: * debian/po/tr.po: * debian/po/zh_CN.po: Updated translations * fc-cache/fc-cache.c: (main): Destroy font configuration on exit to help valgrind * fonts.conf.in: * src/fcfreetype.c: (FcSfntNameTranscode), (FcFreeTypeCharIndex), (FcFreeTypeCheckGlyph): Use own transcoding routines in preference to iconv which appears to have leaks in some translators. Call iconv_close after using iconv (oops). Prefer unicode encoding of Euro char as some fonts mis-encode Euro in other ones. Must fetch bitmap glyphs to get width values to check for monospace/dual-width fonts. 2005-04-13 Ross Burton * src/fcpat.c: Check that a pattern isn't already frozen in FcPatternFreeze. 2005-03-31 Ross Burton * src/fclist.c: * src/fcmatch.c: * src/fcpat.c: Run all FcPattern objects through FcObjectStaticName, so that compares can be done on pointers instead of strings (#2659) 2005-03-17 Tor Lillqvist * src/fontconfig.def.in: Add the .dll to the dll name. 2005-03-10 Keith Packard * debian/README.Debian: Update to reflect configuration changes * debian/changelog: * debian/fontconfig.postinst: Fix Autohint vs Autohinter mistake * debian/fontconfig.templates: Adopt changes from Josselin Mouette for configuration descriptions Update debian to version 2.3.1-2 2005-03-08 Keith Packard * debian/changelog: * debian/rules: Update debian for 2.3.1 2005-03-09 Tor Lillqvist * fontconfig-zip.in: Get the DLL from "bin" where modern libtools put it, not "lib". * src/fccfg.c (FcConfigFileExists): Check also drive letter prefix on Win32. 2005-03-08 Keith Packard * README: * configure.in: * fontconfig/fontconfig.h: Update for 2.3.1 2005-03-05 Keith Packard * src/fcfreetype.c: (addtag), (FcFontCapabilities): Include space and remove numbers from valid script tags. This ensures that tags like 'lao ' work while rejecting those which have any digits. Eliminate a spurious debugging variable (len) 2005-03-05 Keith Packard * src/fcfreetype.c: (addtag), (GetScriptTags), (FcFontCapabilities): Rework GSUB/GPOS script parsing to survive broken fonts. Thanks for the broken font go to Manish Singh 2005-03-05 Keith Packard Josselin Mouette: * debian/changelog: * debian/control: * debian/fontconfig.config: * debian/fontconfig.templates: * debian/rules: Include 2.3 release information in changelog Add Josselin Mouette as an Uploader Set hinting_type to low priority configuration option Manish Singh: * debian/fontconfig.postinst: yes_bitmaps.conf -> yes-bitmaps.conf Funda Wang: * src/fcfreetype.c: Johap -> Johab 2005-03-02 Keith Packard * Makefile.am: * conf.d/Makefile.am: * conf.d/autohint.conf: * conf.d/no-sub-pixel.conf: * conf.d/sub-pixel.conf: * conf.d/unhinted.conf: * debian/autohint.conf: * debian/fontconfig.install: * debian/fontconfig.postinst: * debian/fontconfig.templates: * debian/no-sub-pixel.conf: * debian/unhinted.conf: Move debian-specific conf file examples upstream. Sub-pixel configuration examples must smash subpixel value as Xft always sets it from X. Change sub-pixel rendering debconf descriptions from Enable/Disable to Always/Never. 2005-03-02 Keith Packard * .cvsignore: * conf.d/.cvsignore: * doc/.cvsignore: Ignore more build detritus * Makefile.am: Add debian package construction stuff. * config/config.guess: * config/config.sub: Update to newer versions of these tools * doc/Makefile.am: Get library manuals to build again (we love automake). * debian/README.Debian: * debian/autohint.conf: * debian/changelog: * debian/compat: * debian/control: * debian/copyright: * debian/fontconfig-udeb.install: * debian/fontconfig.config: * debian/fontconfig.defoma: * debian/fontconfig.dirs: * debian/fontconfig.install: * debian/fontconfig.postinst: * debian/fontconfig.postrm: * debian/fontconfig.templates: * debian/libfontconfig1-dev.install: * debian/libfontconfig1.install: * debian/local.conf.md5sum: * debian/no-sub-pixel.conf: * debian/po/POTFILES.in: * debian/po/cs.po: * debian/po/da.po: * debian/po/de.po: * debian/po/es.po: * debian/po/fr.po: * debian/po/ja.po: * debian/po/nl.po: * debian/po/pt.po: * debian/po/pt_BR.po: * debian/po/templates.pot: * debian/po/tr.po: * debian/po/zh_CN.po: * debian/rules: * debian/unhinted.conf: Update debian build system to switch maintainers and deal with 2.3 functionality 2005-03-01 Keith Packard * README: * configure.in: * fontconfig/fontconfig.h: Update for 2.3.0 2005-03-01 Keith Packard * doc/Makefile.am: Generate and install PDF versions of the manuals * doc/fcpattern.fncs: Fix formatting * doc/fcstring.fncs: Add missing exported functions, fix data types * doc/fontconfig-devel.sgml: Add missing pattern elements. * doc/fontconfig-user.sgml: Add missing pattern elements. Document conf.d usage, clarify available orthography list. Fix some config file attributes. Complete list of constants. * fontconfig/fontconfig.h: Mark FC_SOURCE deprecated. * src/fcfreetype.c: (FcFreeTypeQuery): Don't set FC_SOURCE any longer. 2005-02-28 Keith Packard * Makefile.am: * conf.d/Makefile.am: * conf.d/README: * conf.d/no-bitmaps.conf: * conf.d/sub-pixel.conf: * conf.d/yes-bitmaps.conf: * configure.in: Create prototype /etc/fonts/conf.d directory with a few sample configuration files. Deprecate use of local.conf for local customizations in favor of this directory based scheme which is more easily integrated into installation systems. * src/fcname.c: Tag FC_EMBOLDEN as a boolean variable 2005-02-10 Keith Packard reviewed by: pborelli@katamail.com * src/fcdir.c: (FcFileScanConfig): Free patterns from fonts which are rejected by configuration (bug #2518) 2005-01-28 Keith Packard * README: * configure.in: * fontconfig/fontconfig.h: Update for version 2.2.99 2005-01-28 Keith Packard * README: Add a few pointers (#2284, #2285) 2005-01-28 Keith Packard * src/fcint.h: * src/fcname.c: (FcNameBool): * src/fcxml.c: (FcTypeName), (FcTypecheckValue), (FcTypecheckExpr), (FcTestCreate), (FcEditCreate), (FcConfigLexBool), (FcParseBool), (FcParseAlias), (FcParseInclude), (FcParseTest), (FcParseEdit): Polite typechecking for test and edit expressions. Helps catch errors in the font configuration. (bug 229) 2005-01-15 Alan Coopersmith reviewed by: Keith Packard * configure.in: Have --with-expat set EXPAT_CFLAGS (bug 2278) 2005-01-13 Keith Packard * doc/fontconfig-user.sgml: Add SEE ALSO section (bug 2085) 2005-01-13 J. Ali Harlow reviewed by: Keith Packard * Makefile.am: * configure.in: * doc/Makefile.am: * fc-case/Makefile.am: * fc-glyphname/Makefile.am: * fc-lang/Makefile.am: * src/fontconfig.def.in: Cross compiling fixes (bug 280) 2005-01-13 Keith Packard * fonts.conf.in: Update blanks list (Closes bug 86) 2005-01-04 Keith Packard * src/fccache.c: (FcCacheFontSetAdd): Verify that every font pattern loaded from cache has both FC_FILE and FC_FAMILY entries. Attempt to fix bug #2219. 2004-12-29 Keith Packard * README: * configure.in: * fontconfig/fontconfig.h: Update for version 2.2.98 2004-12-29 Keith Packard * fontconfig/fontconfig.h: Document ASCII limitations of Fc character conversion macros * src/fcstr.c: (FcStrCaseWalkerLong), (FcStrDowncase): Fix off-by-one error in utf-8 case walking code. Add FcStrDowncase (useful for testing case conversion functions) 2004-12-29 Keith Packard * .cvsignore: * fc-case/.cvsignore: clean up CVS ignore lists * fc-lang/iso-3166.txt: Add territory database 2004-12-29 Tor Andersson Reviewed by: Keith Packard * fc-lang/ko.orth: Remove Han characters from Korean orthography 2004-12-29 Keith Packard * Makefile.am: Reorder utility programs to make sure fc-case is run before fc-lang as fc-lang uses fcstr.c which uses fccase.h * fonts.conf.in: Fix broken XML 2004-12-29 Keith Packard * fonts.conf.in: Adopt some RedHat suggestions for standard font configuration. * Makefile.am: * configure.in: * fc-case/CaseFolding.txt: * fc-case/Makefile.am: * fc-case/fc-case.c: (panic), (addFold), (ucs4_to_utf8), (utf8_size), (addChar), (foldExtends), (case_fold_method_name), (dump), (parseRaw), (caseFoldReadRaw), (main): * fc-case/fccase.tmpl.h: Add new helper program 'fc-case' to construct case folding tables from standard Unicode CaseFolding.txt file * src/fcint.h: * src/fclist.c: (FcListValueHash): * src/fcstr.c: (FcStrCaseWalkerInit), (FcStrCaseWalkerLong), (FcStrCaseWalkerNext), (FcStrCaseWalkerNextIgnoreBlanks), (FcStrCmpIgnoreCase), (FcStrCmpIgnoreBlanksAndCase), (FcStrHashIgnoreCase), (FcStrIsAtIgnoreBlanksAndCase), (FcStrIsAtIgnoreCase), (FcStrStrIgnoreCase): Re-implement case insensitive functions with Unicode aware versions (including full case folding mappings) 2004-12-13 Keith Packard reviewed by: Owen Taylor * src/fcmatch.c: (FcFontSetSort): I changed FcFontSetSort to respect the generic aliases better in the face of language matching. What I did was to ammend the strict sort order used by FcFontSort so that it 'satisfies' the language specified in the pattern by locating the best matching font supporting each pattern language and then ignores language in the remaining fonts for purposes of matching. So, when asking for 'sans:lang=en', you'll get an English font first, and then the remaining fonts sorted with respect to the 'sans' alias alone -- pushing Kochi fonts ahead of other English-supporting Han fonts. 2004-12-10 Jakub Pavelek reviewed by: Keith Packard * fontconfig/fontconfig.h: * fonts.conf.in: Configuration changes to request synthetic emboldening of fonts. The actual emboldening code will live in Xft. 2004-12-09 John Thacker reviewed by: Keith Packard * fc-lang/ru.orth: Currently Russian (ru) requires 0406 and 0456 (І and Ñ–), but these were eliminated in Russian in 1918 in favor of 0418 and 0438 (И and и), and don't even appear in KOI8-R. (The hypothesis that they don't appear in KOI8-R due to their similarity with Latin I and i is eliminated by their presence in KOI8-U.) I have a couple of fonts with Russian support that don't have the letter. Therefore, 0406 and 0456 should be removed from or commented out of ru.orth 2004-12-06 michael meeks Reviewed by: Keith Packard * src/fcinit.c: (FcMemReport): * src/fcint.h: * src/fclist.c: (FcObjectSetAdd): * src/fcpat.c: (FcValueListEntCreate), (FcPatternBaseFreeze), (FcPatternInsertElt), (FcPatternEqual), (FcObjectStaticName): * src/fcxml.c: (FcParsePatelt): memoize strings and share a single copy for all uses. Note that this could be improved further by using statically allocated blocks and gluing multiple strings together, but I'm basically lazy. In my environment with 800 font files, I get a savings of about 90KB. 2004-12-06 Keith Packard * COPYING: * Makefile.am: * config/Makedefs.in: * configure.in: * doc/edit-sgml.c: * doc/fcatomic.fncs: * doc/fcblanks.fncs: * doc/fccharset.fncs: * doc/fcconfig.fncs: * doc/fcconstant.fncs: * doc/fcfile.fncs: * doc/fcfontset.fncs: * doc/fcfreetype.fncs: * doc/fcinit.fncs: * doc/fcmatrix.fncs: * doc/fcobjectset.fncs: * doc/fcobjecttype.fncs: * doc/fcpattern.fncs: * doc/fcstring.fncs: * doc/fcstrset.fncs: * doc/fcvalue.fncs: * doc/fontconfig-devel.sgml: * doc/fontconfig-user.sgml: * doc/func.sgml: * doc/version.sgml.in: * fc-cache/Makefile.am: * fc-cache/fc-cache.c: * fc-glyphname/Makefile.am: * fc-glyphname/fc-glyphname.c: * fc-glyphname/fcglyphname.tmpl.h: * fc-lang/Makefile.am: * fc-lang/aa.orth: * fc-lang/ab.orth: * fc-lang/af.orth: * fc-lang/am.orth: * fc-lang/ar.orth: * fc-lang/ast.orth: * fc-lang/ava.orth: * fc-lang/ay.orth: * fc-lang/az.orth: * fc-lang/az_ir.orth: * fc-lang/ba.orth: * fc-lang/bam.orth: * fc-lang/be.orth: * fc-lang/bg.orth: * fc-lang/bh.orth: * fc-lang/bho.orth: * fc-lang/bi.orth: * fc-lang/bin.orth: * fc-lang/bn.orth: * fc-lang/bo.orth: * fc-lang/br.orth: * fc-lang/bs.orth: * fc-lang/bua.orth: * fc-lang/ca.orth: * fc-lang/ce.orth: * fc-lang/ch.orth: * fc-lang/chm.orth: * fc-lang/chr.orth: * fc-lang/co.orth: * fc-lang/cs.orth: * fc-lang/cu.orth: * fc-lang/cv.orth: * fc-lang/cy.orth: * fc-lang/da.orth: * fc-lang/de.orth: * fc-lang/dz.orth: * fc-lang/el.orth: * fc-lang/en.orth: * fc-lang/eo.orth: * fc-lang/es.orth: * fc-lang/et.orth: * fc-lang/eu.orth: * fc-lang/fa.orth: * fc-lang/fc-lang.c: * fc-lang/fc-lang.man: * fc-lang/fclang.tmpl.h: * fc-lang/fi.orth: * fc-lang/fj.orth: * fc-lang/fo.orth: * fc-lang/fr.orth: * fc-lang/ful.orth: * fc-lang/fur.orth: * fc-lang/fy.orth: * fc-lang/ga.orth: * fc-lang/gd.orth: * fc-lang/gez.orth: * fc-lang/gl.orth: * fc-lang/gn.orth: * fc-lang/gu.orth: * fc-lang/gv.orth: * fc-lang/ha.orth: * fc-lang/haw.orth: * fc-lang/he.orth: * fc-lang/hi.orth: * fc-lang/ho.orth: * fc-lang/hr.orth: * fc-lang/hu.orth: * fc-lang/hy.orth: * fc-lang/ia.orth: * fc-lang/ibo.orth: * fc-lang/id.orth: * fc-lang/ie.orth: * fc-lang/ik.orth: * fc-lang/io.orth: * fc-lang/is.orth: * fc-lang/iso639-2: * fc-lang/it.orth: * fc-lang/iu.orth: * fc-lang/ja.orth: * fc-lang/ka.orth: * fc-lang/kaa.orth: * fc-lang/ki.orth: * fc-lang/kk.orth: * fc-lang/kl.orth: * fc-lang/km.orth: * fc-lang/kn.orth: * fc-lang/ko.orth: * fc-lang/kok.orth: * fc-lang/ks.orth: * fc-lang/ku.orth: * fc-lang/ku_ir.orth: * fc-lang/kum.orth: * fc-lang/kv.orth: * fc-lang/kw.orth: * fc-lang/ky.orth: * fc-lang/la.orth: * fc-lang/lb.orth: * fc-lang/lez.orth: * fc-lang/lo.orth: * fc-lang/lt.orth: * fc-lang/lv.orth: * fc-lang/mg.orth: * fc-lang/mh.orth: * fc-lang/mi.orth: * fc-lang/mk.orth: * fc-lang/ml.orth: * fc-lang/mn.orth: * fc-lang/mo.orth: * fc-lang/mr.orth: * fc-lang/mt.orth: * fc-lang/my.orth: * fc-lang/nb.orth: * fc-lang/nds.orth: * fc-lang/ne.orth: * fc-lang/nl.orth: * fc-lang/nn.orth: * fc-lang/no.orth: * fc-lang/ny.orth: * fc-lang/oc.orth: * fc-lang/om.orth: * fc-lang/or.orth: * fc-lang/os.orth: * fc-lang/pl.orth: * fc-lang/ps_af.orth: * fc-lang/ps_pk.orth: * fc-lang/pt.orth: * fc-lang/rm.orth: * fc-lang/ro.orth: * fc-lang/ru.orth: * fc-lang/sa.orth: * fc-lang/sah.orth: * fc-lang/sco.orth: * fc-lang/se.orth: * fc-lang/sel.orth: * fc-lang/sh.orth: * fc-lang/si.orth: * fc-lang/sk.orth: * fc-lang/sl.orth: * fc-lang/sm.orth: * fc-lang/sma.orth: * fc-lang/smj.orth: * fc-lang/smn.orth: * fc-lang/sms.orth: * fc-lang/so.orth: * fc-lang/sq.orth: * fc-lang/sr.orth: * fc-lang/sv.orth: * fc-lang/sw.orth: * fc-lang/syr.orth: * fc-lang/ta.orth: * fc-lang/te.orth: * fc-lang/tg.orth: * fc-lang/th.orth: * fc-lang/ti_er.orth: * fc-lang/ti_et.orth: * fc-lang/tig.orth: * fc-lang/tk.orth: * fc-lang/tl.orth: * fc-lang/tn.orth: * fc-lang/to.orth: * fc-lang/tr.orth: * fc-lang/ts.orth: * fc-lang/tt.orth: * fc-lang/tw.orth: * fc-lang/tyv.orth: * fc-lang/ug.orth: * fc-lang/uk.orth: * fc-lang/ur.orth: * fc-lang/uz.orth: * fc-lang/ven.orth: * fc-lang/vi.orth: * fc-lang/vo.orth: * fc-lang/vot.orth: * fc-lang/wa.orth: * fc-lang/wen.orth: * fc-lang/wo.orth: * fc-lang/xh.orth: * fc-lang/yap.orth: * fc-lang/yi.orth: * fc-lang/yo.orth: * fc-lang/zh_cn.orth: * fc-lang/zh_hk.orth: * fc-lang/zh_mo.orth: * fc-lang/zh_sg.orth: * fc-lang/zh_tw.orth: * fc-lang/zu.orth: * fc-list/Makefile.am: * fc-list/fc-list.c: * fc-match/Makefile.am: * fc-match/fc-match.1: * fc-match/fc-match.c: * fontconfig/fcfreetype.h: * fontconfig/fcprivate.h: * fontconfig/fontconfig.h: * src/fcatomic.c: * src/fcblanks.c: * src/fccache.c: * src/fccfg.c: * src/fccharset.c: * src/fcdbg.c: * src/fcdefault.c: * src/fcdir.c: * src/fcfreetype.c: * src/fcfs.c: * src/fcinit.c: * src/fcint.h: * src/fclang.c: * src/fclist.c: * src/fcmatch.c: * src/fcmatrix.c: * src/fcname.c: * src/fcpat.c: * src/fcstr.c: * src/fcxml.c: Change files from ISO-Latin-1 to UTF-8 2004-12-04 Keith Packard * INSTALL: Update links to new freedesktop.org locations * Makefile.am: Add uninstall-local to get rid of fonts.conf and local.conf if they match the distributed versions. Fixes 'make distcheck' 2004-12-04 Keith Packard * README: * configure.in: * fontconfig/fontconfig.h: Updates for version 2.2.97 2004-12-04 Owen Taylor reviewed by: Keith Packard * fc-cache/fc-cache.c: (main): Sleep for two seconds before exiting to make sure timestamps for future changes have distinct mod times in the file system. Bug #1982. * fc-lang/pa.orth: Add Punjabi orthography. Bug #1671. 2004-12-04 Keith Packard * fonts.conf.in: Just remove the FC_FONTDATE -- it has locale issues and annoys redhat multi-arch installs. Now that all X fonts are included without prejudice, the chances of the date being at all interesting are rather limited. Bug #505. * src/Makefile.am: Add copyright and license 2004-12-04 Keith Packard * configure.in: Change default set of fonts to include all of /usr/X11R6/lib/X11/fonts (or wherever the X fonts are located). * doc/fontconfig-user.sgml: Document new directory-name semantics * fonts.conf.in: add conf.d * local.conf: Add selectfont to ignore bitmap fonts, add comment for selectfont which accepts bitmap fonts. * src/fcdir.c: * src/fcint.h: * src/fcxml.c: (FcConfigParseAndLoadDir), (FcConfigParseAndLoad): Allow configuration elements to reference directories. Parse and load all files of the form [0-9]* in sorted order. 2004-12-04 Keith Packard * autogen.sh: Report command line for $srcdir/configure accurately. Bug #212. 2004-12-04 Keith Packard * src/fcfreetype.c: (FcFreeTypeQuery): Check for non-empty face->family_name and face->style_name before using those for the font. Empty names match everything. Bug #210. 2004-12-04 Keith Packard * configure.in: * fontconfig/fontconfig.h: * src/fcfreetype.c: (FcFreeTypeQuery): * src/fcname.c: Create FC_FONTFORMAT from FT_Get_X11_Font_Format function where available. This provides font file format information (BDF, Type 1, PCF, TrueType) for each font. Closes #109. 2004-12-04 Daniel Glassey reviewed by: Keith Packard * doc/fontconfig-user.sgml: Fix typo. * fontconfig/fontconfig.h: * src/fcfreetype.c: (FcFreeTypeQuery), (addtag), (compareulong), (GetScriptTags), (FcFontCapabilities): * src/fcname.c: Add detection for font capabilities (bug #105) 2004-12-04 Keith Packard * Makefile.am: Move existing fonts.conf to fonts.conf.bak * configure.in: Add detection of iconv * doc/fcpattern.fncs: * doc/fontconfig-devel.sgml: * doc/fontconfig-user.sgml: * fonts.dtd: Document new selectfont elements * fc-lang/nb.orth: Switch to UTF-8 in comment * fontconfig/fontconfig.h: * src/fcname.c: Add fullname, and family/style/fullname language entries * src/fccache.c: (FcCacheFontSetAdd): * src/fcdir.c: (FcFileScanConfig): Respect selectfont/*/glob * src/fcint.h: * src/fccfg.c: (FcConfigCreate), (FcConfigDestroy), (FcConfigCompareValue), (FcConfigPatternsAdd), (FcConfigPatternsMatch), (FcConfigAcceptFont): * src/fcxml.c: (FcElementMap), (FcVStackDestroy), (FcVStackPushPattern), (FcPopExpr), (FcParseAcceptRejectFont), (FcPopValue), (FcParsePatelt), (FcParsePattern), (FcEndElement): Add support for selectfont * src/fcfreetype.c: (FcSfntNameTranscode), (FcSfntNameLanguage), (FcStringInPatternElement), (FcFreeTypeQuery): Add multi-lingual family/style/fullname support * src/fclist.c: (FcListPatternMatchAny): Expose FcListPatternMatchAny (which selectfont/*/pattern uses) * src/fcpat.c: (FcPatternRemove), (FcPatternAppend), (FcObjectStaticName): Add new FcPatternRemove/FcPatternAppend. FcObjectStaticName stores computed pattern element names which are required to be static. 2004-09-09 "NAKAMURA Ken'ichi" reviewed by: keithp * Makefile.am: Remove spurious / after $(DESTDIR) 2004-06-30 Keith Packard * README: * configure.in: * fontconfig/fontconfig.h: Update for 2.2.96 2004-06-30 Keith Packard Provided by: Lubos Lunak * src/fccfg.c: (FcConfigUptoDate): However FcConfigUptoDate() doesn't seem to work. See the attached patch. First there's an obvious misplaced parenthesis making it return always false, and second, even this call fails to detect font changes (e.g. adding a new font to /usr/X11R6/lib/X11/fonts/truetype). The patch should fix that as well. The problem seems to be triggered by my fonts.conf specifying only /usr/X11R6/lib/X11/fonts , and therefore config->configDirs doesn't include subdirs, unlike config->fontDirs. 2004-06-03 Keith Packard * fontconfig/fontconfig.h: Remove comma at end of FcResult enum definition. 2004-05-29 Keith Packard * INSTALL: Add steps to md5sum release 2004-05-29 Keith Packard * README: * configure.in: * fontconfig/fontconfig.h: Update for 2.2.95 2004-05-29 Keith Packard * fontconfig/fontconfig.h: * src/fcmatch.c: (FcFontSetMatch): Add FcResultOutOfMemory to provide an accurate error when FcFontSetMatch fails in this way * src/fcfreetype.c: Make #warning about lacking various FreeType features indicate which version those features appeared so users know how to fix the problem (Thanks to Anton Tropashko) 2004-05-05 Keith Packard * src/fcfreetype.c: (FcFreeTypeCharSetAndSpacing): Replace MIN/MAX/ABS macros which happen to have come from FreeType with fontconfig-specific ones (FC_*) 2004-04-23 Keith Packard * INSTALL: Extend release preparation instructions to include notification and distribution steps 2004-04-23 Keith Packard * README: * configure.in: * fontconfig/fontconfig.h: Update to 2.2.94 (2.2.93 shipped with broken libtool bits) 2004-04-23 Keith Packard * .cvsignore: Ignore a few more autotool files 2004-04-14 Keith Packard * INSTALL: Add instructions for doing a release * fontconfig.spec.in: clean up .spec file; perhaps this will be useful to somebody... * README: * configure.in: * fontconfig/fontconfig.h: Update to 2.2.93 * fc-lang/fc-lang.c: Make 'scanopen' static so GCC doesn't whine about lacking prototype * fc-glyphname/Makefile.am: * fc-lang/Makefile.am: * fc-list/Makefile.am: * fc-match/Makefile.am: * src/Makefile.am: Add WARN_CFLAGS to pass -W flags for GCC systems * src/fcfreetype.c: (FcNoticeFoundry), (FcVendorMatch), (FcVendorFoundry), (FcGetPixelSize), (FcFreeTypeQuery): Change various char types around to match across function calls. Fixed bug in using available_sizes[i].height which is in pixels, not 64ths of a pixel. 2004-03-06 Keith Packard * src/fcfreetype.c: (FcFreeTypeQuery): Force FC_FOUNDRY and FC_WIDTH to always be set so that matches looking for explicit values prefer exact matches 2004-03-02 Keith Packard Supplied by: mfabian@suse.de (Mike FABIAN) * src/fcfreetype.c: (FcFreeTypeQuery): Bug #260 fc-cache generates wrong spacing values for bitmap fonts Was using (strcmp (a,b)) instead of (!strcmp(a,b)). 2004-02-21 Manish Singh * fc-glyphname/fc-glyphname.c: (main): Cast strlen to int for printf, so we're 64-bit clean. 2004-02-11 Keith Packard * configure.in: * src/fcfreetype.c: (FcGetPixelSize): Ok, so I messed up the test for y_ppem. Let's see if I got it right this time. 2004-02-10 Keith Packard * configure.in: * src/fcfreetype.c: (FcGetPixelSize): Pre-2.1.5 versions of FreeType didn't include y_ppem in the FT_Bitmap_Size record. Add a configure.in test for this and change the code accordingly (using height instead). 2004-02-06 Keith Packard * fc-lang/nds.orth: Add Low Saxon orthography (Kenneth Rohde Christiansen ) * src/fccfg.c: (FcConfigNewestFile): Oops. Left 'newest.set' unset, which would miscompute the newest file * src/fcfreetype.c: (FcGetPixelSize), (FcFreeTypeQuery), (FcFreeTypeCheckGlyph): Add FcGetPixelSize to extract correct pixel size from bdf/pcf font properties (which report the wrong value in current FreeType) Don't attempt to check for empty glyphs in non-scalable fonts; they have no outlines... 2004-02-01 Tor Lillqvist * src/fccfg.c (FcConfigCreate): fontconfig, at least as used by GIMP and/or PangoFT2 on Windows, crashes when trying to save the cache if config->cache is NULL, which happens if FcConfigHome() is NULL. Guard against that by using the temp folder in that case. 2004-01-03 Roozbeh Pournader * fc-lang/az_ir.orth: * fc-lang/ku_ir.orth: * fc-lang/ps_af.orth: * fc-lang/ps_pk.orth: Added orthographies for Iranian Azerbaijani and Kurdish, and Pashto (Afghan and Pakistani). * fc-lang/ur.orth: Updated Urdu orthography with real data. 2003-12-11 Carl Worth * fc-list/Makefile.am (man_MANS): Move man_MANS into the 'if USEDOCBOOK' block. * fc-cache/Makefile.am (man_MANS): Move man_MANS into the 'if USEDOCBOOK' block. (all-local): Remove excessive whitespace. * autogen.sh: Add 'set -e' to abort when any program fails, (avoids printing of 'now type make' after configure aborts). 2003-11-17 Eric Christopherson reviewed by: Keith Packard * doc/Makefile.am: * fontconfig/fcfreetype.h: * src/fcfreetype.c: Switch to FreeType 2.1.7 style includes. Bug #150. 2003-11-16 Noah Levitt * fc-list/fc-list.sgml: Add some example usages. 2003-11-10 Roozbeh Pournader * src/fcxml.c: Fixed a bug "FcStrtod" in handling some cases with two-byte decimal separators. 2003-10-27 Keith Packard * configure.in: * fontconfig/fontconfig.h: Update to version 2.2.92 2003-10-27 Keith Packard * Makefile.am: * configure.in: * doc/Makefile.am: * fc-cache/Makefile.am: * fc-glyphname/Makefile.am: * fc-lang/Makefile.am: * fc-list/Makefile.am: * fc-match/Makefile.am: * test/Makefile.am: * test/run-test.sh: Yet more cleanups to finish getting 'make distcheck' working This has been tested to ensure that it even works from a _build directory. 2003-10-26 Keith Packard * configure.in: * doc/Makefile.am: * fc-cache/Makefile.am: * fc-glyphname/Makefile.am: * fc-lang/Makefile.am: * fc-lang/fc-lang.c: (scanopen), (scan), (main): * fc-list/Makefile.am: * fc-match/Makefile.am: Attempts to fix 'make distcheck' work. Things are progressing pretty well, but there are still failures long into the process dealing with docs (as always). The big changes here are mostly to make $(srcdir) != "." work correctly, fixing the docbook related sections and fc-lang were particularily tricky. Docbook refuses to load system entities from anywhere other than where the original .sgml file was located, so no luck looking in "." for the configure-generated version.sgml and confdir.sgml files. fc-lang needed help finding .orth files; added a -d option to set the directory as the least evil of many options. Now to go use a faster machine and try and wring out the last issues. 2003-10-26 Keith Packard Tag version 2.2.91 2003-10-26 Keith Packard * doc/Makefile.am: Include confdir.sgml.in in EXTRA_DIST 2003-10-09 Josselin Mouette * fc-cache/fc-cache.sgml fc-cache/Makefile.am: * fc-list/fc-list.sgml fc-list/Makefile.am: Replace fc-cache and fc-list manpages with more detailed, SGML versions. 2003-09-23 Owen Taylor * fontconfig/fontconfig.h src/fcdefault.c (FcDefaultSubstitute) src/fcname.c: Add a FC_HINT_STYLE key for patterns, with possible values HINT_NONE/HINT_SLIGHT/HINT_MEDIUM/HINT_FULL. (Bug #117) 2003-09-23 Owen Taylor * fc-lang/ka.orth: Remove Georgian capitals, they aren't used for normal writing. (Bug #116) 2003-09-06 Noah Levitt * doc/fontconfig-devel.sgml: * doc/fontconfig-user.sgml: * fontconfig/fontconfig.h: * src/fcname.c: * src/fcfreetype.c (FcFreeTypeCharSetAndSpacing): Add new spacing value FC_DUAL (dual-width, as some CJK fonts). (bug #111) * src/fcfreetype.c (FcFreeTypeCharSetAndSpacing): When checking for monospace and dual-width fonts, allow roughly a 3% variance in the advances. 2003-08-31 Manish Singh * src/fccfg.c (FcConfigAppFontClear): Support passing NULL to use default config. 2003-08-15 Carl Worth * src/fcxml.c (FcEditDestroy): Fix leak of FcEdit. (FcPopExpr): Add comment about unhandled FcVStackGlob case. * src/fcpat.c (FcValueListEntDestroy): New function to support FcFini memory cleanup. Some statistics are not kept in synch. here. (FcValueListFreeze): Move hashTable outside this function so it can be accessed by FcValueListThawAll. (FcValueListThawAll): New function complements FcValueListFreeze. (FcPatternBaseFreeze): Move hashTable outside this function so it can be accessed by FcPatternBaseThawAll. (FcPatternBaseThawAll): New function complements FcPatternBaseFreeze. (FcPatternThawAll): New function complements FcPatternFreeze. * src/fcinit.c (FcFini): Add new FcFini to cleanup everything. * src/fccharset.c (FcCharLeafEntCreate): Save pointers to all allocated FcCharLeafEnt "blocks" so they can be freed later. (FcCharSetFreezeLeaf): Move hashTable outside this function so it can be accessed by FcCharSetThawAllLeaf. (FcCharSetThawAllLeaf): New function complements FcCharSetFreezeLeaf. (FcCharSetFreezeBase): Move hashTable outside this function so it can be accessed by FcCharSetThawAll. (FcCharSetThawAll): New function complements FcCharSetFreeze. * src/fccfg.c (FcSubstDestroy): Fix leak of outer FcSubst. (FcConfigDestroy): Fic leak of FcBlanks. * fc-list/fc-list.c (main): Fix leak of FcObjectSet. (main): Add call to FcFini when finished. * fc-glyphname/fc-glyphname.c: Mark several local functions as static. Add prototypes. * doc/fcinit.fncs: Add documentation for FcFini function. * doc/edit-sgml.c: Mark several local functions as static. Add prototypes. * doc/Makefile.am (DOC_MODULE): Fix "suspicious" lines. 2003-06-15 Tor Lillqvist * test/run-test.sh (FONTCONFIG_FILE): Remove CRs from the out file before comparing (needed on Windows). * src/Makefile.am (install-libtool-import-lib): Fix cut&paste error. 2003-06-13 Tor Lillqvist * fontconfig-zip.in (DEVZIP): Add share/doc directory. Add Fc*.3 man pages. * configure.in: Set FC_DEFAULT_FONTS on Win32 to the WINDOWSFONTDIR token. * src/fontconfig.def.in: Move the LIBRARY and VERSION lines to the end, not to confuse libtool, which expects the EXPORTS line to be the first. Add FcConfigEnableHome. * src/fccfg.c: Check also for DLL_EXPORT as indication of being built as a DLL on Win32. 2003-06-09 Keith Packard * Tag version 2.2.90 2003-06-09 Keith Packard * Optimization in FcLangSetIndex was broken, occasionally returning a pointer to the wrong location on miss * Add fc-match to test font matching from the command line. 2003-05-31 Keith Packard * (Bug 85) add support for culmus fonts * (Bug 87) Automake 1.4 doesn't do man_MAN1 correctly * (Bug 88) Fix usage info on non-long option systems (Tim Mooney) 2003-05-28 James Su * Fix "contains" op for strings and langsets. 2003-05-17 Keith Packard * Fix build error with BDF prop local. Free langset after query 2003-05-14 Keith Packard * Extract spacing from XLFD atom 2003-05-12 Juliusz Chroboczek * Reinstate SETWIDTH_NAME parsing for legacy fonts, disappeared in 1.30. * Generate FC_SIZE and FC_DPI for legacy bitmap fonts 2003-05-12 Keith Packard * Use FcIsWidth to share code * Set FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH when scanning fonts to avoid misclassifying some Han fonts as monospaced. 2003-05-07 Keith Packard * Add filename-based accept/reject to ammend available fonts. * Change FT_ENCODING_ADOBE_CUSTOM to ft_encoding_adobe_custom for older FreeType releases. 2003-05-06 Keith Packard * Remove 0b82 and Tamil numbers from tamil orthography (Jungshik Shin ) 2003-05-04 Keith Packard + Map glyph names in fonts with adobe custom encoding to unicode 2003-05-02 Keith Packard * Add FC_WEIGHT_BOOK as weight 75 2003-04-30 Keith Packard * Typo in bitstream foundry name 2003-04-24 Keith Packard * Eliminate italic_angle check for PS fonts 2003-04-23 Noah Levitt * Getting closer to fixing /etc/fonts hard-coding. 2003-04-22 Keith Packard * Update autogen.sh to work with newer automake versions * Handle pattern elements moving during multiple edits 2003-04-23 James Henstridge * doc/fontconfig-devel.sgml: close the element. * doc/fcpattern.fncs: close the element. * doc/func.sgml: close the element. 2003-04-22 Keith Packard + Remove some unused variables, and initialize some other ones so gcc doesn't warn us. 2003-04-16 Keith Packard + tag version 2.1.94 2003-04-16 Keith Packard + add BDF property fetching support for foundry (from Juliusz Chroboczek) + add BDF property fetching support for width 2003-04-11 Juliusz Chroboczek + Implemented foundry generation for Type 1 and TrueType 2003-04-11 Gerard Escalante + Retrieve information from Type1 FontInfo dictionaries 2003-04-07 Colin Walters + src/Makefile.am: Fix dummy makefile target names when MS_LIB_AVAILABLE isn't set. 2003-03-22 Tor Lillqvist Changes for Windows: + On Windows with gcc (a.k.a. mingw) build as a DLL. + We don't want to hardcode the fonts.conf file location in the DLL, so we look up the DLL location at run-time in a DllMain() function. The fonts.conf location is deduced from that. + The colon can't be used as path separator on Windows, semicolon is used instead. File path components can be separated with either slash or backslash. Absolute paths can also begin with a drive letter. + Add internal function FcStrLastSlash that strrchr's the last slash, or backslash on Windows. + There is no link() on Windows. For atomicity checks, mkdir a lock directory instead. + In addition to HOME, also look for USERPROFILE. + Recognize the special font directory token WINDOWSFONTDIR, to use the system's font directory. + Remove the fontconfig-def.cpp that was obsolete. Add fontconfig.def(.in), without internal functions. + Add a fontconfig-zip(.in) script, used to build a binary distribution. Fri Mar 7 07:55:00 EST 2003 Mike A. Harris + RPM specfile cleanups for 2.1.92: Removed man1/* and added man5/* to main package and man3/* to devel package + Added missing defattr(-, root, root) to main RPM package + Added HTML and text development documentation to -devel subpackage Wed Mar 5 05:08:00 EST 2003 Mike A. Harris + Added back the configure macro options --disable-docs, otherwise fontconfig installs docs into /usr/share/doc/fontconfig (with no version number) unconditionally, causing RPM to fail the build due to _unpackaged_files_terminate_build. We pick up the pregenerated docs with %doc already. Wed Mar 5 04:26:20 EST 2003 Mike A. Harris + Removed commented out rpm macro define at top of spec file, replacing it with a simple explanation, since rpm macros are expanded by rpm even in comments. + Changed /usr/bin to _bindir in BuildRequires lines + Cleaned up rpm postinstall script, and made fc-cache use _bindir + Reorganized file manifest lists Sun Mar 2 14:16:17 EST 2003 Owen Taylor + fontconfig.spec.in: Improvements from Red Hat spec file. + {fc-lang,fc-cache,fc-list}/Makefile.am: Add man pages. + docs/*.sgml: SGML fixes. Sat Mar 1 17:28:53 PST 2003 keithp + Ok, so the ChangeLog is a bit out of date + Lots of bugs fixed; most are in bugzilla, the biggest problems were in cache management where Owen discovered the library would lose badly when combining fonts-cache and ~/.fonts-cache data + Converted from autoconf to automake. This after getting patches accepted into libtool to allow the '-version-number' argument which lets packages set version numbers explicitly rather than the roundabout libtool way + Converted documentation to SGML using the docbook DTD. Now .txt and .html documents are installed in /usr/share/doc/fontconfig and there's no man page. Perhaps a man version can be written at some point. Sat Aug 31 15:21:22 PDT 2002 keithp + Xrender and Xft had several bugs related to rendering manually placed or poly-face text + Added more complete memory tracing in fontconfig Checked with (patched) mozilla and found no leaks + Updated Latin orthographies by comparing those from evertype.com with those from eki.ee. Tried to make sensible choices, including chars that occured in both and leaving some optional chars out that occured only in one. Mon Aug 26 16:33:04 PDT 2002 keithp + Owen discovered that FcLangSetHasLang wasn't actually checking the language set. Mon Aug 26 13:37:23 PDT 2002 keithp + Append a version number to cache filenames Thu Aug 22 11:36:18 PDT 2002 keithp + Add "contains" and "not_contains" operators and elements to font configuration + Changed semantics of eq operator for LangSets to check for FcLangEqual so that any match will do + FcFontList was using FcConfigCompareValue (...FcOpEqual) instead of FcValueEqual to check for identical values when inserting into the results. This broke when the above semantic change was made, now it uses FcValueEqual which is "more correct" in any case. Thu Aug 22 00:32:29 PDT 2002 keithp + Reimplement FC_LANG as new datatype. Lists of strings was consuming over a megabyte of memory for 401 fonts. + Freeze patterns loaded from cache files. This shares common value lists and common patterns which saves considerable memory. + Change the denotation of 'constant' charsets to use special ref value instead of separate boolean. + Clean up leak tracing stuff, found several unannoted alloc/free calls Tue Aug 20 16:17:37 PDT 2002 keithp + Fix memory leak when parsing matrices from XML Mon Aug 19 11:57:27 PDT 2002 keithp + Fix autoconf files to pass FONTCONFIG_PATH on compile line so that ${prefix} gets substituted correctly. + Use getc_unlocked/putc_unlocked on systems that provide them to avoid damage done to stdio by posix + Eliminate FC_PATTERN and FcTypePattern in favor of an extended api for FcConfigSubstitute which takes both the font and the pattern. + Add 'sans serif' alias for 'sans-serif' as some apps can't handle hyphens in family names + Eliminate pretense of support for libxml2 + Comment origins of Han orthographies Tue Jul 30 18:37:09 PDT 2002 keithp + Add binding property to edit element so that strong binding values may be inserted by the config file. The default remains weak. Sun 28 Jul 04:16:55 PDT 2002 keithp + Tagged release candidate 1 in the CVS tree and placed fcpackage.rc1.tar.gz for distribution Thu Aug 1 08:55:08 PDT 2002 keithp + Fixed autoconf builds to always specify install target files (for BSD). Also fixed to define FONTCONFIG_PATH in config.h so that nonstandard installs will actually work.