1 2006-03-08 Patrick Lam <plam@mit.edu>
4 Now remove debian/ directory.
6 2006-03-08 Patrick Lam <plam@mit.edu>
10 Remove debian/ directory from sources. See Debian's subversion
11 server at svn://svn.debian.org/pkg-freedesktop/trunk/fontconfig
14 2006-03-08 Denis Jacquerye <moyogo@gmail.com>
18 * fc-lang/iso639-1, fc-lang/iso639-2:
20 Add orthography for Lingala.
22 2006-03-08 Carl Worth <cworth@cworth.org>
26 * conf.d/10LohitGujarati.conf:
28 Add a configuration file that disables hinting for the Lohit
29 Gujarati font (since the hinting distort some glyphs quite badly).
31 2006-03-08 Egmont Koblinger <egmont@uhulinux.hu>
34 * src/fcdir.c (FcDirScanConfig):
36 Sort directory entries while scanning them from disk;
37 prevents Heisenbugs due to file ordering in a directory.
39 2006-03-07 Behdad Esfahbod <behdad@cs.toronto.edu>
42 * src/fcfreetype.c (GetScriptTags):
43 * src/ftglue.c, src/ftglue.h:
45 Remove stuff we don't use, make get_{char,short,long} functions
46 of ftglue macros to be inlined.
49 * src/fcname.c (FcObjectSerialize):
51 Code cleanups (excess prototype, old-style function definition).
53 2006-03-05 Patrick Lam <plam@mit.edu>
54 * src/fcpat.c (FcPatternGetString):
56 Because we hacked FcPatternGet, we don't really need to expand the
57 filename again in FcPatternGetString.
59 2006-03-05 Patrick Lam <plam@mit.edu>
60 * src/fcpat.c (FcPatternGetString, FcPatternGet):
62 Ok, so some people (wine!) use FcPatternGet to fetch FC_FILE.
63 Make that work. Reported by Bernhard Rosenkraenzer.
65 2006-03-03 Patrick Lam <plam@mit.edu>
68 Include inttypes.h instead of stdint.h if appropriate.
70 2006-03-03 Patrick Lam <plam@mit.edu>
71 * fc-cat/fc-cat.c (FcFileIsDir):
72 * fc-glyphname/fc-flyphname.c:
74 More stub definitions and remove FcFileIsDir from fc-cat.
76 2006-03-03 Patrick Lam <plam@mit.edu>
79 Fix compilation on AIX with stub definitions (bug 6097).
81 2006-03-03 Patrick Lam <plam@mit.edu>
82 * src/fccache.c (FcCacheSkipToArch, FcDirCacheProduce):
83 * src/fcfreetype.c (GetScriptTags):
84 * src/fcfs.c (FcFontSetDistributeBytes):
85 * src/fcpat.c (FcValueListEntCreate, FcValueListNeededBytes):
87 Get rid of C++-style comments.
89 2006-03-03 Patrick Lam <plam@mit.edu>
92 Enable creation of 2.3.94 Debian packages.
94 2006-03-02 Egmont Koblinger <egmont@uhulinux.hu>
97 * src/fclang.c (FcCharSetForLang):
99 Fix suspicious return expression which causes junk
102 2006-02-24 Patrick Lam <plam@mit.edu>
106 * fontconfig/fontconfig.h:
108 Bump version to 2.3.94.
110 2006-02-24 Patrick Lam <plam@mit.edu>
115 2006-02-24 Patrick Lam <plam@mit.edu>
116 * conf.d/10-fonts-persian.conf:
118 Remove unconditional emboldening (per Behdad's instructions).
122 Add @s to hide some echos.
124 2006-02-24 Mike Fabian <mfabian@suse.de>
125 Takashi Iwai <tiwai@suse.de>
128 * src/fcfreetype.c (GetScriptTags):
130 Fix double-free on error case.
132 2006-02-21 Patrick Lam <plam@mit.edu>
133 * fc-lang/fc-lang.c (scan):
135 Strip \r and whitespace from input; fixes bug 3454.
137 2006-02-21 Patrick Lam <plam@mit.edu>
138 * fc-lang/fc-lang.c (main):
140 Allocate large arrays statically in fc-lang to fix crashes under
143 2006-02-21 Diego Petten <flameeyes@gentoo.org>
144 * src/fcfreetype.c (FcFreeTypeCharIndex):
146 Pass the buck; make fontconfig not crash on pango badness.
148 2006-02-21 Patrick Lam <plam@mit.edu>
149 * conf.d/10-fonts-persian.conf:
151 Use embeddedbitmap rather than rh_prefer_bitmap.
153 2006-02-21 Paul Cornett <paulcor1@bullseye.com>
156 * src/fccache.c (FcDirCacheWrite):
157 * src/fcdir.c (FcFileScanConfig):
158 * src/fcfreetype.c (FcStringInPatternElement):
159 * src/fcxml.c (FcParseFamilies):
160 * src/ftglue.c (ftglue_face_goto_table):
162 Eliminate redundancies.
164 2006-02-21 Kjartan Maraas <kmaraas@gnome.org>
167 * fc-list/fc-list.c (main):
168 * src/fcfreetype.c (FcFreeTypeCharSetAndSpacing):
169 * src/fcstr.c (FcStrStr):
170 * src/fcxml.c (FcConfigSaveAttr):
172 Eliminate unused vars reported by Intel's compiler.
174 2006-02-21 Aiet Kolkhi <aietkolkhi@gmail.com>
179 Remove one more archaic character.
181 2006-02-21 Ross Burton <ross@burtonini.com>
182 reviewed by: plam, keithp
184 * src/fcxml.c (FcParsePatelt):
186 Freeze patterns created by configuration file for tiny
187 memory savings (every little bit helps).
189 2006-02-21 Mike Fabian <mfabian@suse.de>
192 * fc-cat/fc-cat.c (main):
194 Initialize fontconfig library in fc-cat to avoid segfault.
196 2006-02-18 Patrick Lam <plam@mit.edu>
197 * fc-cache/fc-cache.c (scanDirs):
198 * src/fccache.c (FcCacheReadDirs):
199 * src/fcdir.c (FcDirScanConfig):
201 Fix the underlying cause of the below segfault (must usually
202 call FcDirCacheHasCurrentArch after FcDirCacheValid).
204 2006-02-18 Patrick Lam <plam@mit.edu>
205 * src/fccache.c (FcDirCacheHasCurrentArch):
207 Fix triggering of segfault caused by misreading cache files
208 (reported by fcrozat).
210 2006-02-17 Patrick Lam <plam@mit.edu>
211 * src/fcint.h (FC_CACHE_MAGIC):
213 Bump up magic version; we changed the binary format.
215 2006-02-17 Patrick Lam <plam@mit.edu>
216 * fc-cat/fc-cat.c (main):
218 Enable fc-cat to print out old-style cache info when given a
221 2006-02-16 Patrick Lam <plam@mit.edu>
222 * src/fccache.c (FcDirCacheHasCurrentArch):
224 Deal correctly with changing FC_CACHE_MAGIC.
226 2006-02-16 Patrick Lam <plam@mit.edu>
227 * fc-cache/fc-cache.c (usage, scanDirs, main):
229 Add -r --really-force option which blows away cache files and then
232 2006-02-16 Patrick Lam <plam@mit.edu>
233 * src/fccache.c (FcDirCacheUnlink, FcCacheCopyOld, FcDirCacheWrite):
235 Don't bail if fontconfig can't remove a dir cache file.
236 Skip the ID of a cache file when copying.
237 Eliminate 'source file too small' bug in FcDirCacheWrite.
239 2006-02-13 Patrick Lam <plam@mit.edu>
240 * src/fcfreetype.c (FcFreeTypeQuery):
242 Fix memory leak in error condition code.
244 2006-02-13 Mike Fabian <mfabian@suse.de>
246 * src/fcfreetype.c (FcFreeTypeQuery):
248 Skip bitmap fonts which can't even get it together enough to
249 declare a family name; this appears to reproduce previous
250 fontconfig behaviour.
252 2006-02-10 Takashi Iwai <tiwai@suse.de>
254 * src/fccache.c (FcDirCacheOpen):
256 Try to open /var/cache/fontconfig/[hashed name] before
257 fonts.cache-2 in a directory, because /var/cache/fontconfig
258 failures ought to be fixable, unlike fonts.cache-2 failures,
259 which may leave you screwed.
261 2006-02-10 Takashi Iwai <tiwai@suse.de>
263 * src/fcmatch.c (FcFontSetMatch):
265 Use a tri-state to mark the fonts which didn't get blocked but
266 were just missing an element, to distinguish them from the
267 fonts that do match the element.
269 2006-02-10 Takashi Iwai <tiwai@suse.de>
271 * src/fcmatch.c (FcFontSetMatch):
273 Don't kill fonts because they don't declare an element that's
276 2006-02-09 Patrick Lam <plam@mit.edu>
277 * src/fccache.c (FcGlobalCacheLoad, FcGlobalCacheSave,
278 FcDirCacheUnlink, FcDirCacheOpen, FcDirCacheWrite):
280 Define and pass O_BINARY to open if appropriate, for those
281 platforms that need it. Reported by Doodle.
283 2006-02-09 Patrick Lam <plam@mit.edu>
284 * src/fccharset.c (FcCharSetNeededBytes, FcCharSetSerialize,
287 Fix problem with missing 'en' due to euro.patch: change
288 cache file format slightly to coincide with that generated
291 2006-02-07 Patrick Lam <plam@mit.edu>
292 * src/fccache.c (FcCacheReadDirs):
296 2006-02-07 Patrick Lam <plam@mit.edu>
297 * src/fcdir.c (FcDirScanConfig):
299 Don't reject dirs that can't be normalized (fixes lilypond, and
300 is correct in the context of application font directories.)
302 2006-02-07 Takashi Iwai <tiwai@suse.de>
305 * src/fccache.c (FcCacheReadDirs):
307 Use normalized directory name exclusively in FcCacheReadDirs.
309 2006-02-07 Dirk Mueller <dmueller@suse.com>
312 * src/fcpat.c (FcValueHash, FcValueListHash, FcValueListEntCreate):
314 Perf optimizations. Inline FcValueCanonicalize,
315 reduce FcValueListPtrU usage, remove redundant cast.
317 2006-02-07 Takashi Iwai <tiwai@suse.de>
320 * src/fccharset.c (FcLangCharSetPopulate, FcCharSetInsertLeaf)
323 Fix missing FcCacheBankToIndex in FcCharSetInsertLeaf.
324 Declare extern for static arrays as arrays, not pointers.
325 (Part of the fix for 'fonts don't have en' issue after Euro patch.)
327 2006-02-07 Dirk Mueller <dmueller@suse.com>
340 Add Euro sign to list of symbols required by European languages.
342 2006-02-07 Patrick Lam <plam@mit.edu>
343 * src/fccache.c (FcCacheReadString):
345 Fix hidden variable warning.
347 2006-02-07 Dirk Mueller <dmueller@suse.com>
350 * src/fccache.c (FcCacheReadString, FcCacheSkipString):
352 Remove de-escaping logic because FcCacheWriteString
353 doesn't escape anyway. Do blockwise reading instead
354 of byte-wise for performance.
356 2006-02-06 Patrick Lam <plam@mit.edu>
357 Takashi Iwai <tiwai@suse.de>
359 * src/fccache.c (FcCacheReadDirs, FcCacheRead):
361 Don't loop infinitely on recursive symlinks (client-side).
363 2006-02-06 Takashi Iwai <tiwai@suse.de>
365 * fc-cache/fc-cache.c (scanDirs, main):
367 Don't loop infinitely on recursive symlinks.
369 2006-02-06 Takashi Iwai <tiwai@suse.de>
371 * src/fccache.c (FcGlobalCacheLoad, FcGlobalCacheReadDir,
372 FcGlobalCacheDirFind, FcGlobalCacheUpdate,
373 FcGlobalCacheSave, FcCacheReadDirs):
376 Skip subdirs when skipping over stale bits of global cache.
377 Introduce state machine into FcGlobalCacheDir to avoid
378 doing inappropriate operations on global dir entries, e.g.
379 writing out an out-of-date cache entry.
381 2006-02-06 Takashi Iwai <tiwai@suse.de>
383 * src/fcdir.c (FcFileScanConfig):
385 Hoist FcFileIsDir check out of FcFileScanConfig loop.
387 2006-02-06 Takashi Iwai <tiwai@suse.de>
390 * src/fccfg.c (FcConfigInodeMatchFontDir, FcConfigAddFontDir,
391 FcConfigAddFontDirSubdirs, FcConfigNormalizeFontDir):
393 Don't rescan when trying to normalize a non-declared font dir.
394 Don't add font dirs multiple times (even if they're aliased).
396 2006-02-06 Dirk Mueller <dmueller@suse.de>
399 * src/fcfs.c (FcFontSetUnserialize):
401 Explain apples/oranges comparison and fix compilation error.
403 2006-02-06 Dirk Mueller <dmueller@suse.de>
406 * src/fcfs.c (FcFontSetUnserialize):
408 Insert check for integer overflow in # of fonts.
410 2006-02-04 Behdad Esfahbod <behdad@cs.toronto.edu>
414 * fc-cache/Makefile.am:
415 * fc-cat/Makefile.am:
416 * fc-list/Makefile.am:
418 Make 'make distcheck' work with automake 1.6.3.
420 2006-02-03 Takashi IWAI <tiwai@suse.de>
423 * fc-cat/fc-cat.c (FcCacheGlobalFileReadAndPrint, main,
426 * src/fccache.c (FcGlobalCacheLoad, FcGlobalCacheSave,
427 FcDirCacheConsume, FcDirCacheWrite)
428 * src/fcxml.c (FcConfigMessage):
430 Check I/O call return values and eliminate unused variable
433 2006-02-03 Takashi Iwai <tiwai@suse.de>
436 * src/fccfg.c (FcConfigAppFontAddFile, FcConfigAppFontAddDir)
440 2006-02-03 Dirk Mueller <dmueller@suse.de>
443 * src/fcfs.c (FcFontSetUnserialize):
445 Gracefully handle the case where a cache asserts that it
446 has a negative number of fonts, causing overflow.
448 2006-02-03 Patrick Lam <plam@mit.edu>
449 * src/fccache.c (FcDirCacheUnlink):
451 Fix double free in error case.
453 2006-01-31 Behdad Esfabod <behdad@cs.utoronto.edu>
454 Stephan Kulow <coolo@suse.de>
457 * fc-cache/Makefile.am:
459 Replace 'stamp' target with mkinstalldirs.
461 2006-01-31 Mike Fabian <mfabian@suse.de>
464 * src/fccache.c (FcGlobalCacheLoad):
466 Toast broken global cache files.
468 2006-01-30 Patrick Lam <plam@mit.edu>
469 * src/fccache.c (FcGlobalCacheReadDir):
471 Actually use the directories that I added to the global cache.
474 2006-01-30 Mike Fabian <mfabian@suse.de>
477 * fc-cache/fc-cache.c (scanDirs):
479 Don't stop scanning if a directory in fonts.conf doesn't
480 exist, because subsequent directories might exist.
482 2006-01-30 Patrick Lam <plam@mit.edu>
483 * src/fccache.c (FcGlobalCacheLoad):
485 Make global cache work again after putting dir names into global
486 cache (I misplaced the recording of a file offset).
488 2006-01-30 Patrick Lam <plam@mit.edu>
489 * fc-cat/fc-cat.c (FcCacheGlobalFileReadAndPrint):
491 Update fc-cat to handle subdir lists in global cache file.
493 * src/fccache.c (FcGlobalCacheLoad):
495 Another FcCacheReadString return value check.
497 2006-01-30 Mike Fabian <mfabian@suse.de>
500 * src/fccache.c (FcGlobalCacheLoad, FcDirCacheUnlink
501 FcDirCacheOpen, FcDirCacheRead, FcDirCacheWrite):
503 Make fccache more resilient to broken cache files by checking
504 return value of FcCacheReadString all the time.
506 2006-01-30 Frederic Crozat <fcrozat@mandriva.com>
509 * fc-match/fc-match.1:
510 * fc-lang/fc-lang.man:
512 Remove references to dead fontconfig(3) manpages in
513 other fontconfig manpages.
515 2006-01-29 Behdad Esfabod <behdad@cs.utoronto.edu>
518 * doc/fcpattern.fncs:
520 Fix world's tiniest typo in code example.
522 2006-01-29 Mike Fabian <mfabian@suse.de>
525 * src/fccache.c (FcGlobalCacheReadDir):
527 Fix global cache reads of subdirectories.
529 2006-01-29 Patrick Lam <plam@mit.edu>
531 Add documentation for FcConfigNormalizeFontDir.
533 * src/fccache.c (FcGlobalCacheDirDestroy, FcGlobalCacheLoad,
534 FcGlobalCacheUpdate, FcGlobalCacheSave):
535 * src/fcdir.c (FcDirScanConfig):
538 Write directory information to global caches to fix make check
539 (reported by Ronny V. Vindenes). This changes the global cache
542 2006-01-27 Patrick Lam <plam@mit.edu>
543 * fc-cache/fc-cache.c (scanDirs):
544 * fontconfig/fontconfig.h:
546 * src/fccache.c (FcDirCacheValid, FcDirCacheHasCurrentArch):
548 Move FcConfigNormalizeFontDir call so that it doesn't result in
549 infinite recursion (reported by Ronny V. Vindenes).
551 2006-01-26 Patrick Lam <plam@mit.edu>
552 * src/fccache.c (FcDirCacheValid, FcDirCacheHasCurrentArch):
553 * src/fccfg.c (FcConfigNormalizeFontDir):
555 Add a couple of missing normalizations to make fc-cache work
556 right; only scan subdirectories once.
558 2006-01-26 Mike Fabian <mfabian@suse.de>
561 * src/fcacache.c (FcGlobalCacheReadDir):
563 Don't crash on non-existant directories in global cache.
565 2006-01-26 Patrick Lam <plam@mit.edu>
566 * src/fccache.c (FcGlobalCacheSave, FcDirCacheWrite):
567 * src/fccfg.c (FcConfigAddFontDirSubdirs, FcConfigNormalizeFontDir):
568 * src/fcdir.c (FcDirScanConfig):
569 * src/fcxml.c (FcEndElement):
571 Stop trampling the directory name when writing out caches.
572 (with Mike Fabian:) Beef up FcConfigNormalizeFontDir to scan
573 subdirs when necessary. Don't scan directories that can't be
576 2006-01-25 Patrick Lam <plam@mit.edu>
577 * src/fccache.c (FcDirCacheOpen, FcDirCacheWrite):
578 * src/fccfg.c (FcConfigEvaluate):
579 * src/fcfreetype.c (FcPatternAddWithBinding):
581 Fix additional memory leaks reported by Ronny V. Vindenes: don't
582 invoke FcValueSave on hashed static strings in
583 FcPatternAddWithBinding.
585 Add another st_dev check in FcDirCacheOpen.
587 2006-01-24 James Su <james.su@gmail.com>
590 * src/fcfreetype.c (FcFreeTypeIsExclusiveLang):
591 * fc-lang/zh_hk.orth:
593 Treat zh-hk fonts differently from zh-tw fonts. This patch may
594 cause fontconfig to treat A-X fonts differently from A-Y fonts;
595 please mail the fontconfig list if this causes any problems.
597 2006-01-24 Patrick Lam <plam@mit.edu>
598 * src/fccache.c (FcDirCacheUnlink, FcDirCacheWrite):
599 * src/fcfreetype.c (FcFreeTypeQuery):
601 Fix memory leaks reported by Ronny V. Vindenes.
603 2006-01-19 Andreas Schwab <schwab@suse.de>
606 * src/fcpat.c (FcStrNeededBytes):
608 Fix for unaligned memory accesses.
610 2006-01-18 Mike Fabian <mfabian@suse.de>
613 * src/fcdir.c (FcDirScanConfig):
615 Properly order the FcConfigAddFontDir and FcConfigNormalizeFontDir
616 calls to avoid crashes.
618 2006-01-14 Patrick Lam <plam@mit.edu>
619 * src/fccache.c (FcDirCacheConsume):
621 Fix segfault when consuming zero-length caches in fc-cat
622 (which has no config, so FcConfigAddFontDir shouldn't be called.)
624 2006-01-14 Patrick Lam <plam@mit.edu>
625 * fc-cache/fc-cache.c (scanDirs):
626 * fontconfig/fontconfig.h:
627 * src/fccache.c (FcGlobalCacheReadDir, FcGlobalCacheUpdate,
628 FcGlobalCacheSave, FcDirCacheUnlink, FcDirCacheOpen):
629 * src/fccfg.c (FcConfigBuildFonts, FcConfigNormalizeFontDir):
630 * src/fcdir.c (FcDirScanConfig):
633 Compare device numbers as well as inodes.
634 Always normalize directory names before comparing them.
636 2006-01-11 Mike Fabian <mfabian@suse.de>
639 * fc-cat/fc-cat.c (FcCacheGlobalFileReadAndPrint):
641 Allocate extra space for appended '/' in directory name.
643 2006-01-10 Patrick Lam <plam@mit.edu>
644 * src/fccache.c (FcDirCacheConsume, FcDirCacheOpen,
645 FcDirCacheValid, FcDirCacheHasCurrentArch,
646 FcDirCacheUnlink, FcDirCacheRead, FcDirCacheConsume):
647 * fc-cache/fc-cache.c (main):
649 Explicitly add font dirs to config.fontDirs even if they're empty.
650 Set current config in fc-cache.c.
651 Fix treatment of cache directory as read from cache file; don't
652 use string equality to determine if we have the right file,
655 2006-01-09 Patrick Lam <plam@mit.edu>
656 * fc-cache/fc-cache.c (scanDirs):
657 * fc-cat/fc-cat.c (FcCacheGlobalFileReadAndPrint, FcCacheFileRead):
658 * src/fccache.c (FcGlobalCacheReadDir, FcCacheReadDirs,
659 FcDirCacheRead, FcDirCacheConsume, FcDirCacheWrite):
660 * src/fccfg.c (FcConfigNormalizeFontDir):
661 * src/fcdir.c (FcDirScanConfig):
664 Normalize font dirs by using the form, as given in fonts.conf, and
665 recorded in FcConfig's fontDirs string set, as canonical.
667 Actually update config.fontDirs as font directories are scanned.
669 2006-01-08 James Su <james.su@gmail.com>
670 * src/fcmatch.c (FcFontSetMatch):
672 Fix matching bug when multiple elements match; don't use
673 the sum of all scores, but the best score.
675 Also more perf opts, e.g. evaluate best over all font sets
676 rather than on a per-set basis (and other changes).
678 2006-01-08 Patrick Lam <plam@mit.edu>
679 * src/fccache.c (FcDirCacheConsume):
681 Properly skip past dir caches that contain zero fonts (as occurs
682 in global caches.) Reported by Mike Fabian.
684 2006-01-06 Patrick Lam <plam@mit.edu>
685 * src/fcdbg.c (FcPatternPrint):
687 Print out full pathname in fc-match -v as well. Reported by
690 2006-01-06 Mike Fabian <mfabian@suse.de>
693 * src/fcname.c (FcNameParse):
695 Fix bug where fc-match crashes when given __DUMMY__ property to
698 (I added the __DUMMY__ string to enable callers of
699 FcObjectToPtrLookup to distinguish an error return from a
700 successful return. -PL)
702 2006-01-05 Patrick Lam <plam@mit.edu>
705 Add self to AUTHORS list.
707 * fc-cat/fc-cat.c (FcCacheGlobalFileReadAndPrint,
708 FcCacheFileRead, FcCachePrintSet, main):
709 * src/fccache.c (FcGlobalCacheLoad, FcGlobalCacheUpdate,
710 FcGlobalCacheSave, FcCacheNextOffset,
711 FcDirCacheHasCurrentArch, FcDirCacheRead,
712 FcDirCacheConsume, FcDirCacheWrite):
714 * src/fcpat.c (comment):
716 Minor change to global cache file format to fix fc-cat bug
717 reported by Frederic Crozat, and buglet with not globally caching
718 directories with zero fonts cached.
720 2006-01-02 Lubos Lunak <l.lunak@suse.cz>
723 * src/fccfg.c (FcConfigEvaluate):
725 Fix double-free which occurs because FcValueCanonicalize doesn't
726 create an extra copy of the returned value, it only canonicalizes
729 2006-01-02 Patrick Lam <plam@mit.edu>
730 * doc/fontconfig-user.sgml:
732 Fix version of .cache file (currently 1 -> currently 2). Reported
735 2005-12-21 Jinghua Luo <sunmoon1997@gmail.com>
738 * src/fcpat.c (FcPatternAddFullFname, FcPatternFindFullFname):
740 Shut up GCC warnings on amd.
742 2005-12-20 Patrick Lam <plam@mit.edu>
746 * fontconfig/fontconfig.h:
748 Bump version to 2.3.93.
750 2005-12-20 Patrick Lam <plam@mit.edu>
751 * src/fccharset.c (FcLangCharSetPopulate):
752 * src/fcint.h (FcCacheBankToIndex):
754 Avoid check on _fcBankId nullness and fix case where it used to
757 2005-12-20 Patrick Lam <plam@mit.edu>
758 * src/fcxml.c (FcConfigParseAndLoad):
760 Use open instead of fopen (requested by Phil Race for Sun).
762 2005-12-20 Patrick Lam <plam@mit.edu>
763 * src/fccache.c (FcDirCacheWrite);
764 * fc-cache/Makefile.am:
766 Fix GCC4 warning and Makefile brokenness for /var/cache/fontconfig
769 2005-12-20 Patrick Lam <plam@mit.edu>
770 * src/fcfreetype.c (FcFreeTypeQuery):
772 Restore code to skip over PCF fonts that have no encoded
774 (We guess that a font is PCF by presence of the PIXEL_SIZE
777 2005-12-12 Patrick Lam <plam@mit.edu>
778 * src/fccache.c (FcDirCacheOpen, FcDirCacheWrite):
780 Read and write the original location as a fallback for the
781 hashed cache file locations. This is mostly for users to be
782 able to have per-directory cache files.
784 2005-12-12 Patrick Lam <plam@mit.edu>
785 * fc-cache/fc-cache.c (scanDirs):
786 * fc-cache/Makefile.am:
787 * src/fccache.c (FcDirCacheHashName):
789 Improve error message when fc-cache can't write the cache. Add
790 missing slash. Reported by Behdad. Incorporate Behdad's patch to
791 create /var/cache/fontconfig when appropriate.
793 2005-12-12 Behdad Esfahbod <behdad@cs.toronto.edu>
796 * src/fcxml.c (FcConfigGetAttribute):
798 Fix crash reported by Frederic Crozat when using libxml2.
800 2005-12-09 Patrick Lam <plam@mit.edu>
803 * fc-cache/Makefile.am:
804 * fc-cat/Makefile.am:
806 * fc-cat/fc-cat.c (FcCacheGlobalFileReadAndPrint, FcCacheFileRead):
807 * fontconfig/fontconfig.h (FC_CACHE_SUFFIX):
808 * src/fccache.c (FcCacheSkipString, FcGlobalCacheLoad,
809 FcGlobalCacheSave, FcCacheNextOffset, FcDirCacheValid,
810 FcDirCacheHasCurrentArch, FcDirCacheHashName,
811 FcDirCacheOpen, FcDirCacheRead, FcDirCacheWrite):
813 Migrate cache files from fonts directories to
814 /var/cache/fontconfig. This helps make fontconfig FHS-compliant,
815 but requires that all caches get rebuilt.
817 Also, autogen.sh now needs the additional parameter
818 --localstatedir=/var.
820 2005-12-07 Patrick Lam <plam@mit.edu>
821 * src/fcpat.c (FcPatternAddString):
823 Because we've changed FcPatternAddString to use FcStrStaticName
824 and not FcValueSave, explicitly handle the case of a null string.
826 2005-12-06 Patrick Lam <plam@mit.edu>
827 * fc-cat/fc-cat.c (FcCachePrintSet, FcCacheGlobalFileReadAndPrint):
831 2005-12-05 Patrick Lam <plam@mit.edu>
832 * src/fcname.c (FcNameGetObjectType):
834 Don't assign types to user object names.
836 2005-12-05 Patrick Lam <plam@mit.edu>
837 * src/fcpat.c (FcValueDestroy, FcValueListDestroy, FcStrHashed):
839 Don't free strings that have been returned from FcStrStaticName.
841 2005-12-01 Patrick Lam <plam@mit.edu>
842 * fc-cat/fc-cat.c (FcCacheGlobalFileReadAndPrint, main):
844 Add codepath for reading global cache files as well.
846 2005-12-01 Behdad Esfahbod <behdad@cs.toronto.edu>
849 * conf.d/10-fonts.persian.conf:
850 * conf.d/Makefile.am:
852 Add config file for Persian fonts from Sharif FarsiWeb, Inc.
854 2005-11-30 Behdad Esfahbod <behdad@cs.toronto.edu>
857 * src/fcxml.c (FcConfigParseAndLoad):
859 Only add a config file to the set of config files once.
861 2005-11-29 Patrick Lam <plam@mit.edu>
862 * src/fcint.h (FcCacheBankToIndex);
864 Fix segfault by guarding array dereference.
866 2005-11-29 Dirk Mueller <dmueller@suse.de>
870 * src/fccache.c (FcDirCacheConsume, FcCacheHaveBank,
871 FcCacheBankToIndex, FcCacheBankToIndexMTF,
875 Refactor FcCacheBankToIndex into an inlineable part
876 (in fcint.h) which checks the front of the list and a
877 non-inlineable part which finds and moves the appropriate element
878 to the front of the list.
880 2005-11-29 Patrick Lam <plam@mit.edu>
881 * src/fccfg.c (FcConfigBuildFonts):
882 * src/fccache.c (FcCacheReadDirs):
884 Make the perf guys hate me a bit less: hoist the directory-name
885 FcConfigAcceptFont check for cached fonts up to directory cache
886 read time, rather than running it for each font.
888 2005-11-29 Patrick Lam <plam@mit.edu>
889 * src/fccfg.c (FcConfigBuildFonts):
891 * src/fcpat.c (FcPatternFindFullFname):
893 Don't make FcPatternFindFullFname available to fccfg, it's not
894 really safe. Instead go through FcPatternGetString (sorry,
895 perf guys.) Also, use globs for dirs as well.
897 2005-11-28 Patrick Lam <plam@mit.edu>
898 * src/fccfg.c (FcConfigBuildFonts):
902 2005-11-28 Patrick Lam <plam@mit.edu>
904 * src/fcpat.c (FcPatternFindFullFname):
905 * src/fccfg.c (FcConfigBuildFonts):
907 Fix problem dating back at least to 2.3.2 where globs weren't
908 being applied to patterns loaded from a cache.
910 2005-11-28 Patrick Lam <plam@mit.edu>
911 * doc/fontconfig-user.sgml:
913 Fix some obvious spelling mistakes.
915 2005-11-28 Dirk Mueller <dmueller@suse.com>
916 Stephan Kulow <coolo@suse.de>
919 * src/fcmatch.c (FcFontSetMatch):
921 Don't kill all fonts during match (oops!)
924 2005-11-25 Dirk Mueller <dmueller@suse.com>
925 Stephan Kulow <coolo@suse.de>
926 Michael Matz <matz@suse.de>
929 * src/fcmatch.c (FcObjectPtrToMatcher, FcCompareValueList,
932 Rewrite FcFontSetMatch to a path-finding based algorithm, i.e.
933 inline FcCompare into FcFontSetMatch and reorder the
934 loops, adding a boolean array which blocks patterns from future
935 consideration if they're known to not be best on some past
938 2005-11-26 Dirk Mueller <dmueller@suse.com>
941 * src/fcmatch.c (FcCompareValueList):
945 2005-11-25 Patrick Lam <plam@mit.edu>
946 * src/fcmatch.c (FcMatchObjectPtrsInit, FcCompareValueList):
948 Don't do random matching when bad objects are passed into
951 2005-11-25 Patrick Lam <plam@mit.edu>
953 * src/fcpat.c (FcPatternEnsureBank, FcPatternDistributeBytes,
954 FcPatternSerialize, FcPatternUnserialize,
955 FcValueListEnsureBank, FcValueListDistributeBytes,
956 FcValueListUnserialize):
958 Rename fcpatterns, fcpatternelts, fcvaluelists to _fcPatterns,
959 _fcPatternElts, _fcValueLists for consistency.
961 2005-11-25 Dirk Mueller <dmueller@suse.com>
966 Pass the FcObjectPtr to FcCompareValueList, not the char * (perf).
968 2005-11-25 Patrick Lam <plam@mit.edu>
970 * src/fccache.c (FcDirCacheConsume):
971 * src/fccharset.c (FcCharSetUnserialize):
972 * src/fcfs.c (FcFontSetUnserialize):
973 * src/fclang.c (FcLangSetUnserialize):
974 * src/fcname.c (FcObjectUnserialize):
975 * src/fcpat.c (FcStrUnserialize, FcValueListUnserialize,
976 FcPatternUnserialize):
978 Pass around FcCache *s to the Unserialize functions for extra
979 consistency (and less overhead, for what that's worth).
981 2005-11-24 Dirk Mueller <dmueller@suse.com>
985 * src/fcmatch.c (FcCompare*, FcFontSetSort):
986 * src/fcname.c (FcNameUnparseValue):
988 Inline the *PtrU functions to gain perf.
989 Remove unneeded params for the FcCompare* functions.
991 2005-11-24 Dirk Mueller <dmueller@suse.com>
994 * src/fcint.h, fontconfig/fontconfig.h:
996 Move FC_BANK_DYNAMIC, FC_BANK_FIRST to internal header.
998 * src/fcpat.c, src/fcint.h, src/fcname.c:
1000 Check for type validity during FcPatternAddWithBinding, don't
1001 verify type in FcFontMatch, don't call FcCanonicalize here
1002 (which always does a deep copy).
1004 2005-11-24 Dirk Mueller <dmueller@suse.com>
1007 * src/fcmatch.c (FcCompareNumber, FcCompareString, FcCompareFamily):
1008 * src/fcpat.c (FcPatternAddWithBinding):
1010 Make FcCompareString and FcCompareFamily less expensive.
1011 Only add a value for FC_FAMILY if the proposed value is a string.
1013 2005-11-24 Dirk Mueller <dmueller@suse.com>
1016 * src/fcdbg.c (FcDebug, FcDebugInit, FcPatternPrint):
1017 * src/fcinit.c (FcInitLoadConfig, FcInitLoadConfigAndFonts):
1018 * src/fcint.h (FcDebug):
1020 Inline FcDebug invocations and only initialize once, in FcInit*.
1021 Improve debug msg in FcPatternPrint.
1023 2005-11-23 Frederic Crozat <fcrozat@mandriva.com>:
1026 * fontconfig/fontconfig.h:
1029 Minor code warning cleanups.
1031 2005-11-23 Frederic Crozat <fcrozat@mandriva.com>:
1034 * fc-match/fc-match.c (main):
1036 Make getopt_long accept -s parameter to fc-match as well.
1038 2005-11-21 Dirk Mueller <dmueller@suse.com>
1041 * src/fcmatch.c (FcCompareValueList):
1043 Manually perform inlining & partial redundancy elimination to
1044 reduce calls to FcValueListPtrU.
1046 2005-11-21 Dirk Mueller <dmueller@suse.com>
1049 * src/fcstr.c (FcStrFree, FcStrCaseWalkerInit, FcStrCaseWalkerLong,
1050 FcStrCaseWalkerNext, FcStrCaseWalkerNextIgnoreBlanks):
1052 Only invoke strlen() when really necessary.
1054 2005-11-19 Matthias Clasen <mclasen@redhat.com>
1058 * src/fcfreetype.c (FcGetPixelSize, FcFreeTypeQuery, GetScriptTags,
1059 FcFontCapabilities):
1063 Get rid of the use of freetype internal headers in fcfreetype.c,
1064 since those headers will go away with freetype 2.2. Replace with
1065 public domain ftglue code from pango. Note that the patch removes
1066 some extra error checking in FT_Get_BDF_Property() and comments
1067 out the skipping of empty pcf fonts.
1069 2005-11-19 Jinghua Luo <sunmoon1997@gmail.com>
1072 * fc-lang/fc-lang.c (main):
1074 Further fix of patch from 2005-11-04: miscounted numbers count
1075 (numbers_count); didn't strip duplicate numbers (langBankNumbers);
1076 and leafidx_offset and numbers_offset in fcLangCharSets are wrong.
1078 Removed leafidx_count and numbers_count since they are the same
1079 and replaced them with offset_count.
1081 2005-11-18 Frederic Crozat <fcrozat@mandriva.com>
1084 * fc-cat/fc-cat.c (main):
1086 Don't crash when fc-cat invoked with no arguments.
1088 2005-11-18 Frederic Crozat <fcrozat@mandriva.com>
1091 * src/fcxml.c (FcConfigSaveAttr, FcConfigParseAndLoad):
1093 Fix invalid read access caused by premature free and
1094 GCC4 warnings in libxml2 codepath.
1096 2005-11-17 Jinghua Luo <sunmoon1997@gmail.com>
1099 * src/fccfg.c (FcConfigValues):
1101 List iteration not needed in FcConfigValues, since it's building
1102 up the list itself; we can just strip FcVoid elements during
1105 2005-11-17 Patrick Lam <plam@mit.edu>
1106 * src/fccfg.c (FcConfigValues):
1108 Fix crash on invalid constants in config files (forgot to update
1109 a pointer upon list iteration.)
1111 2005-11-17 Frederic Crozat <fcrozat@mandriva.com>
1114 * src/fcxml.c (FcTypecheckExpr):
1116 Complain about invalid constants in config files.
1118 2005-11-17 Andreas Schwab <schwab@suse.de>
1121 * src/fccache.c (FcGlobalCacheSave):
1123 Don't add current_arch_start more than once.
1125 2005-11-16 Patrick Lam <plam@mit.edu>
1126 * src/fccharset.c (FcCharSetDistributeBytes, FcCharSetUnserialize):
1127 * src/fcfs.c (FcFontSetUnserialize):
1128 * src/fcname.c (FcObjectDistributeBytes, FcObjectUnserialize):
1129 * src/fcpat.c (FcStrUnserialize):
1131 Fix ordering of ALIGN with respect to saving block_ptr; add
1132 another ALIGN to fcfs.c.
1134 2005-11-16 Patrick Lam <plam@mit.edu>
1135 * src/fccache.c (FcDirCacheProduce)
1137 Fix case where alignment bytes bumped up metadata->count
1138 causing unwarranted failures to write cache files.
1139 (Reported by Stephan Kulow).
1141 2005-11-16 Patrick Lam <plam@mit.edu>
1142 * src/fccache.c (FcDirCacheProduce):
1143 * src/fccharset.c (FcCharSetDistributeBytes):
1144 * src/fcfs.c (FcFontSetDistributeBytes):
1146 * src/fclang.c (FcLangSetDistributeBytes):
1147 * src/fcname.c (FcObjectDistributeBytes):
1148 * src/fcpat.c (FcPatternNeededBytes, FcValueListNeededBytes,
1151 Add *NeededBytesAlign(), which overestimates the padding which is
1152 later added by the new ALIGN macro. Fix alignment problems on
1153 ia64 and s390 by bumping up block_ptr appropriately. (Earlier
1154 version by Andreas Schwab).
1156 2005-11-16 Stephan Kulow <coolo@kde.org>
1161 Use sysconf to determine proper PAGESIZE value; this
1162 appears to be POSIX-compliant. (reported by Andreas Schwab)
1164 2005-11-04 Patrick Lam <plam@mit.edu>
1165 * fc-lang/fc-lang.c:
1170 Fix bug 2878 (excessive relocations at startup for charsets,
1171 reported by Ross Burton): fc-lang/fc-lang now creates the
1172 static form of the langset, not the dynamic form, so that
1173 the charsets should now be in .rodata.
1175 2005-11-04 Patrick Lam <plam@mit.edu>
1176 * src/fcdir.c (FcDirScanConfig):
1178 Add test for validity of directory caches that
1179 somehow got lost (reported by make distcheck).
1181 2005-11-04 Patrick Lam <plam@mit.edu>
1185 * fontconfig/fontconfig.h:
1187 Bump version to 2.3.92.
1189 2005-11-02 Patrick Lam <plam@mit.edu>
1190 * src/fcpat.c (FcPatternDuplicate):
1192 Fix argument ordering problem in call to FcPatternTransferFullFname.
1194 2005-11-02 Patrick Lam <plam@mit.edu>
1195 * src/fcfreetype.c (FcFreetypeQuery):
1196 * src/fcpat.c (FcPatternDestroy, FcPatternDuplicate,
1197 FcPatternTransferFullFname):
1199 Fix warnings and embarrassing double-free error.
1201 2005-11-02 Zhe Su <zsu@novell.com>
1206 Change the rule for artificial emboldening in fonts.conf.in. This
1207 enables the support for artificial emboldening included in cairo.
1209 2005-11-02 Patrick Lam <plam@mit.edu>
1210 * src/fcpat.c (FcPatternDestroy, FcPatternTransferFullName):
1212 Don't zero out full names for FC_REF_CONSTANT fonts;
1213 also, duplicate full names when transferring, and free
1214 full names when freeing the associated font.
1215 Reported by Jinghua Luo.
1217 2005-11-02 Patrick Lam <plam@mit.edu>
1218 * fc-cache/fc-cache.c (scanDirs):
1219 * src/fcpat.c (FcValueListSerialize):
1221 Revert the previous patch and commit the correct patch:
1222 I forgot a canonicalization in FcValueListSerialize, so
1223 that it would choke on already-serialized input files. Duh!
1225 2005-11-02 Patrick Lam <plam@mit.edu>
1226 * fc-cache/fc-cache.c (scanDirs):
1228 Forcibly rescan a directory before writing a fresh local
1229 cache file for that directory, fixing the losing-fonts
1230 problem reported by Mike Fabian and also apparently the
1231 font cache file corruption.
1233 2005-11-02 Patrick Lam <plam@mit.edu>
1234 * src/fccache.c (FcGlobalCacheLoad):
1236 Fix thinko: actually, the whole global cache is stale
1237 if the global cache is older than the (newest) config file.
1239 2005-11-02 Patrick Lam <plam@mit.edu>
1240 * src/fccache.c (FcGlobalCacheLoad):
1241 * src/fccfg.c (FcConfigModifiedTime, FcConfigBuildFonts):
1244 Declare the global cache of a directory's contents to be stale if
1245 the directory is newer than the (newest) configuration file.
1247 2005-10-31 Patrick Lam <plam@mit.edu>
1249 * src/fclist.c (FcListAppend):
1250 * src/fcmatch.c (FcFontRenderPrepare):
1251 * src/fcpat.c (FcPatternTransferFullFname, FcPatternDuplicate,
1252 FcPatternFreeze, FcPatternBaseFreeze):
1254 Copy the full pathname whenever duplicating an FcPattern; otherwise,
1255 applications continue breaking.
1257 2005-10-31 Patrick Lam <plam@mit.edu>
1258 * fc-cat/fc-cat.c (FcCacheFileRead, main):
1259 * src/fcfreetype.c (FcFreeTypeQuery):
1261 Fix small memory error (tried to free argv); use basename and
1262 dirname correctly (they can modify their arguments).
1264 2005-10-31 Patrick Lam <plam@mit.edu>
1272 Reinstate basename patch, but keep a hash table linking FcPatterns
1273 to their fully-qualified font names for clients' benefit. Clients
1274 only pay for the font names once they request the FC_FILE property
1275 from an FcPattern, but the font name is malloc'd at that point (i.e.
1276 not mmapped: that's impossible, since it may vary between machines.)
1277 Clients do have to pay for a copy of the path name per cache file.
1279 Note that FcPatternGetString now does some rewriting if you ask
1280 for an FC_FILE, appending the pathname as appropriate.
1282 2005-10-31 Patrick Lam <plam@mit.edu>
1283 * src/fcfreetype.c (FcFreeTypeQuery):
1285 Revert basename patch, which breaks fontconfig clients on my system.
1287 2005-10-25 Jinghua Luo <sunmoon1997@gmail.com>
1290 * fontconfig/fonts.conf.in:
1291 * fontconfig/fontconfig.h:
1295 Add FC_EMBEDDED_BITMAP object type to tell Xft/Cairo whether
1296 to load embedded bitmaps or not.
1298 2005-10-25 Patrick Lam <plam@mit.edu>
1299 * src/fcfreetype.c (FcFreeTypeQuery):
1301 Only add basename to patterns' FC_FILE element, not any part of
1304 2005-10-22 Patrick Lam <plam@mit.edu>
1307 Add some more consts, fixing more GCC4 warnings.
1309 2005-10-22 Zhe Su <zsu@novell.com>
1312 Support localized font family and style names.
1313 This has been reported to break old apps like xfd, but modern
1314 (gtk+/qt/mozilla) apps work fine.
1316 2005-10-21 Patrick Lam <plam@mit.edu>
1317 * src/fccache.c (FcGlobalCacheLoad):
1319 Destroy the global cache file if it's terminally broken. (reported by
1322 2005-10-21 Patrick Lam <plam@mit.edu>
1323 * fc-list/fc-list.c (main):
1324 * src/fcname.c (FcNameUnparse, FcNameUnparseEscaped):
1325 * fontconfig/fontconfig.h:
1327 Prevent fc-list from escaping strings when printing them (reported by
1330 2005-10-20 Marcus Meissner <meissner@suse.de>
1333 * fontconfig/fontconfig.h:
1335 Add valist sentinel markup for FcObjectSetBuild and FcPatternBuild.
1337 2005-10-14 Ross Burton <ross@burtonini.com>
1340 * fc-glyphname/fc-glyphname.c:
1343 Add consts to variables so as to move arrays into .rodata.
1345 2005-10-14 Mike Fabian <mfabian@suse.de>
1348 * src/fccache.c (FcDirCacheUnlink):
1350 Check existence of directory cache file before attempting to unlink.
1352 2005-10-13 Patrick Lam <plam@mit.edu>
1353 * src/fccache.c (FcDirCacheUnlink):
1355 Fix flipped return value on unlink. (Reported by Mike Fabian)
1357 2005-10-12 Patrick Lam <plam@mit.edu>
1360 * src/fcdir.c (FcDirScanConfig):
1363 When fc-cache is run without --force, use directory cache files
1364 to speed up fc-cache run time. (Reported by Mike Fabian)
1366 2005-10-06 Patrick Lam <plam@mit.edu>
1368 * src/fcname.c (FcObjectToPtr):
1369 * src/fcpat.c (FcStrStaticName):
1371 Add padding to make valgrind and glibc not hate each other
1372 when calling strlen().
1374 2005-10-05 Simos Xenitellis <simos74@gmx.net>
1375 reviewed by: plam & keithp
1379 Modify config file to use Greek fonts before Asian fonts with
1382 2005-10-05 Christian Biesinger <cbiesinger@web.de>
1383 reviewed by: plam & keithp
1387 Use libtool -no-undefined flag on all platforms.
1389 2005-10-05 Patrick Lam <plam@mit.edu>
1390 * src/fccache.c (FcCacheHaveBank):
1392 Implement move-to-front array for banks (perf regression
1393 reported by Ronny V. Vindenes).
1395 2005-10-04 Patrick Lam <plam@mit.edu>
1396 * src/fccache.c (FcDirCacheValid, FcDirCacheUnlink,
1397 FcDirCacheHasCurrentArch):
1398 * fc-cache/fc-cache.c (scanDirs):
1399 * fontconfig/fontconfig.h:
1401 Add new API which unlinks directory caches and checks dir caches
1402 for existence of appropriate sections. Fix fc-cache to unlink
1403 stale cache files and save directory caches that lack relevant
1406 2005-10-03 Patrick Lam <plam@mit.edu>
1407 * src/fccache.c (FcDirCacheValid):
1409 Ensure that a directory cache has the appropriate section
1410 before reporting that it is valid (reported by Matthias Clasen).
1412 2005-09-29 Mathias Hasselmann <mathias.hasselmann@gmx.de>
1420 Use libxml2 if requested (with --enable-libxml2) or if
1421 expat is not available.
1423 2005-09-29 Patrick Lam <plam@mit.edu>
1424 * src/fccache.c (FcGlobalCacheSave, FcDirCacheWrite):
1426 Fix multi-arch cache files: compute the position for the
1427 block to be added using info from OrigFile, not NewFile.
1429 2005-09-28 Patrick Lam <plam@mit.edu>
1430 * src/fccache.c (FcCacheMachineSignature):
1432 Cast results of sizeof() to unsigned int to get rid of
1433 warnings on x86_64 (thanks Matthias Clasen).
1435 2005-09-27 Patrick Lam <plam@mit.edu>
1436 * src/fccache.c (FcGlobalCacheSave, FcCacheCopyOld,
1439 Use FcAtomic to rewrite cache files.
1441 2005-09-27 Patrick Lam <plam@mit.edu>
1443 * src/fccache.c (FcDirCacheWrite):
1445 Don't unlink the fonts.cache-2 file even if there's no data
1446 to write; just write an empty cache file. (thanks Lubos Lunak)
1448 2005-09-27 Patrick Lam <plam@mit.edu>
1450 * src/fccache.c (FcDirCacheWrite):
1452 Allocate room for the subdirectory names in each
1453 directory cache. Thanks to James Cloos for finding
1454 and diagnosing this bug!
1456 2005-09-22 Patrick Lam <plam@mit.edu>
1458 * fc-cache/fc-cache.sgml:
1459 * src/fccache.c (FcDirCacheWrite):
1460 * src/fccache.h (struct FcCache):
1462 Update documentation -- fc-cache's man page now says that you
1463 need to run fc-cache once per cached architecture; add some
1464 documentation to the FcCache structure.
1466 Make fc-cache write out fonts.cache-2 files for directories with
1467 no fonts (i.e. only subdirectories).
1469 2005-09-22 Patrick Lam <plam@mit.edu>
1471 * fc-cache/fc-cache.sgml:
1472 * fc-case/fc-case.c:
1473 * fc-glyphname/fc-glyphname.c:
1479 More GCC 4 cleanups, due to Behhad Esfahbod <behdad@beddad.org>.
1483 * fc-lang/fc-lang.c:
1484 * fontconfig/fcprivate.h:
1485 * fontconfig/fontconfig.h:
1499 Implement new mmaped cache for font information.
1500 Bump so revision to 2.3.90.
1502 2005-07-25 Keith Packard <keithp@keithp.com>
1504 * doc/fontconfig-user.sgml:
1505 * fc-glyphname/fc-glyphname.c: (scan), (main):
1506 * fc-lang/fc-lang.c: (FcConfigHome):
1507 * fc-match/fc-match.c: (main):
1508 * src/fccfg.c: (FcConfigHome):
1509 * src/fcfreetype.c: (FcSfntNameTranscode), (FcSfntNameLanguage),
1510 (FcVendorMatch), (FcFreeTypeQuery), (FcFreeTypeCharSetAndSpacing),
1511 (addtag), (FcFontCapabilities):
1512 * src/fcpat.c: (FcValueListEntCreate):
1513 * src/fcstr.c: (FcStrCaseWalkerInit):
1514 * src/fcxml.c: (FcParsePatelt), (FcConfigParseAndLoadDir):
1516 Various GCC 4 cleanups for signed vs unsigned char
1518 Match only [0-9]*.conf files in <include>{directory}</include>
1519 elements to avoid loading *.rpmsave or .dpkg-old files. (otaylor)
1521 2005-07-15 Carl Worth <cworth@cworth.org>
1524 * src/fcinit.c: (FcFini):
1525 * src/fcpat.c: (FcPatternFini): Rename FcPatternThawAll to
1528 * src/fcpat.c: (FcObjectStaticName), (FcObjectStaticNameFini):
1529 Pull the FcObjectStateName hash table out to file scope, and add
1530 FcObjectStaticNameFini so that FcFini will cleanup this hash table
1533 * src/fcxml.c: (FcConfigParseAndLoad): Clear FILE* to NULL after
1536 2005-06-16 Patrick Lam <plam@MIT.EDU>
1540 * src/fccfg.c: (FcConfigCompareValue):
1541 Make FcOpNotContains use FcStrStr for strings so that
1542 it matches semantics for !FcOpContains.
1544 2005-05-20 Keith Packard <keithp@keithp.com>
1548 Move fontconfig source package to libs as per override
1550 2005-05-20 Aiet Kolkhi <aietkolkhi@gmail.com>
1552 reviewed by: Mike Fabian
1555 The ka.orth file requires several characters which are not
1556 used anymore in modern Georgian and which are missing in the free
1557 Georgian TrueType fonts downloadable at:
1559 http://aiet.qartuli.net/docs/georgian_on_linux_en.php
1561 2005-04-27 Keith Packard <keithp@keithp.com>
1565 Update date to real 2.3.2 release date.
1566 Fix change attributions
1568 2005-04-27 Keith Packard <keithp@keithp.com>
1571 Bump so revision for 2.3.2
1572 * fc-cache/fc-cache.c: (scanDirs):
1573 Fix a few minor leaks in error cases.
1575 2005-04-23 Keith Packard <keithp@keithp.com>
1580 * fontconfig/fontconfig.h:
1581 Update for version 2.3.2
1583 2005-04-21 Keith Packard <keithp@keithp.com>
1585 * debian/fontconfig.postinst:
1586 Don't force bitmap font enable in default
1587 configuration; allows users to override this in
1597 * debian/po/pt_BR.po:
1598 * debian/po/templates.pot:
1600 * debian/po/zh_CN.po:
1601 Updated translations
1603 * fc-cache/fc-cache.c: (main):
1604 Destroy font configuration on exit to help valgrind
1607 * src/fcfreetype.c: (FcSfntNameTranscode), (FcFreeTypeCharIndex),
1608 (FcFreeTypeCheckGlyph):
1609 Use own transcoding routines in preference to iconv
1610 which appears to have leaks in some translators.
1611 Call iconv_close after using iconv (oops).
1613 Prefer unicode encoding of Euro char as some
1614 fonts mis-encode Euro in other ones.
1616 Must fetch bitmap glyphs to get width values
1617 to check for monospace/dual-width fonts.
1619 2005-04-13 Ross Burton <ross@burtonini.com>
1622 Check that a pattern isn't already frozen in FcPatternFreeze.
1624 2005-03-31 Ross Burton <ross@burtonini.com>
1629 Run all FcPattern objects through FcObjectStaticName, so that
1630 compares can be done on pointers instead of strings (#2659)
1632 2005-03-17 Tor Lillqvist <tml@novell.com>
1634 * src/fontconfig.def.in: Add the .dll to the dll name.
1636 2005-03-10 Keith Packard <keithp@keithp.com>
1638 * debian/README.Debian:
1639 Update to reflect configuration changes
1641 * debian/fontconfig.postinst:
1642 Fix Autohint vs Autohinter mistake
1643 * debian/fontconfig.templates:
1644 Adopt changes from Josselin Mouette for configuration descriptions
1645 Update debian to version 2.3.1-2
1647 2005-03-08 Keith Packard <keithp@keithp.com>
1651 Update debian for 2.3.1
1653 2005-03-09 Tor Lillqvist <tml@novell.com>
1655 * fontconfig-zip.in: Get the DLL from "bin" where modern libtools
1658 * src/fccfg.c (FcConfigFileExists): Check also drive letter
1661 2005-03-08 Keith Packard <keithp@keithp.com>
1665 * fontconfig/fontconfig.h:
1668 2005-03-05 Keith Packard <keithp@keithp.com>
1670 * src/fcfreetype.c: (addtag), (FcFontCapabilities):
1671 Include space and remove numbers from valid script tags.
1672 This ensures that tags like 'lao ' work while rejecting
1673 those which have any digits.
1674 Eliminate a spurious debugging variable (len)
1676 2005-03-05 Keith Packard <keithp@keithp.com>
1678 * src/fcfreetype.c: (addtag), (GetScriptTags),
1679 (FcFontCapabilities):
1680 Rework GSUB/GPOS script parsing to survive broken fonts.
1681 Thanks for the broken font go to Manish Singh
1683 2005-03-05 Keith Packard <keithp@keithp.com>
1688 * debian/fontconfig.config:
1689 * debian/fontconfig.templates:
1691 Include 2.3 release information in changelog
1692 Add Josselin Mouette as an Uploader
1693 Set hinting_type to low priority configuration option
1696 * debian/fontconfig.postinst:
1697 yes_bitmaps.conf -> yes-bitmaps.conf
1703 2005-03-02 Keith Packard <keithp@keithp.com>
1706 * conf.d/Makefile.am:
1707 * conf.d/autohint.conf:
1708 * conf.d/no-sub-pixel.conf:
1709 * conf.d/sub-pixel.conf:
1710 * conf.d/unhinted.conf:
1711 * debian/autohint.conf:
1712 * debian/fontconfig.install:
1713 * debian/fontconfig.postinst:
1714 * debian/fontconfig.templates:
1715 * debian/no-sub-pixel.conf:
1716 * debian/unhinted.conf:
1717 Move debian-specific conf file examples upstream.
1719 Sub-pixel configuration examples must smash subpixel value
1720 as Xft always sets it from X.
1722 Change sub-pixel rendering debconf descriptions from
1723 Enable/Disable to Always/Never.
1725 2005-03-02 Keith Packard <keithp@keithp.com>
1728 * conf.d/.cvsignore:
1730 Ignore more build detritus
1733 Add debian package construction stuff.
1735 * config/config.guess:
1736 * config/config.sub:
1737 Update to newer versions of these tools
1740 Get library manuals to build again (we love automake).
1742 * debian/README.Debian:
1743 * debian/autohint.conf:
1748 * debian/fontconfig-udeb.install:
1749 * debian/fontconfig.config:
1750 * debian/fontconfig.defoma:
1751 * debian/fontconfig.dirs:
1752 * debian/fontconfig.install:
1753 * debian/fontconfig.postinst:
1754 * debian/fontconfig.postrm:
1755 * debian/fontconfig.templates:
1756 * debian/libfontconfig1-dev.install:
1757 * debian/libfontconfig1.install:
1758 * debian/local.conf.md5sum:
1759 * debian/no-sub-pixel.conf:
1760 * debian/po/POTFILES.in:
1769 * debian/po/pt_BR.po:
1770 * debian/po/templates.pot:
1772 * debian/po/zh_CN.po:
1774 * debian/unhinted.conf:
1775 Update debian build system to switch maintainers and
1776 deal with 2.3 functionality
1778 2005-03-01 Keith Packard <keithp@keithp.com>
1782 * fontconfig/fontconfig.h:
1785 2005-03-01 Keith Packard <keithp@keithp.com>
1788 Generate and install PDF versions of the manuals
1790 * doc/fcpattern.fncs:
1793 * doc/fcstring.fncs:
1794 Add missing exported functions, fix data types
1796 * doc/fontconfig-devel.sgml:
1797 Add missing pattern elements.
1799 * doc/fontconfig-user.sgml:
1800 Add missing pattern elements. Document conf.d usage,
1801 clarify available orthography list. Fix some config file
1802 attributes. Complete list of constants.
1804 * fontconfig/fontconfig.h:
1805 Mark FC_SOURCE deprecated.
1807 * src/fcfreetype.c: (FcFreeTypeQuery):
1808 Don't set FC_SOURCE any longer.
1810 2005-02-28 Keith Packard <keithp@keithp.com>
1813 * conf.d/Makefile.am:
1815 * conf.d/no-bitmaps.conf:
1816 * conf.d/sub-pixel.conf:
1817 * conf.d/yes-bitmaps.conf:
1819 Create prototype /etc/fonts/conf.d directory with a few
1820 sample configuration files.
1821 Deprecate use of local.conf for local customizations in favor of
1822 this directory based scheme which is more easily integrated into
1823 installation systems.
1826 Tag FC_EMBOLDEN as a boolean variable
1828 2005-02-10 Keith Packard <keithp@keithp.com>
1830 reviewed by: pborelli@katamail.com
1832 * src/fcdir.c: (FcFileScanConfig):
1833 Free patterns from fonts which are rejected by configuration
1836 2005-01-28 Keith Packard <keithp@keithp.com>
1840 * fontconfig/fontconfig.h:
1841 Update for version 2.2.99
1843 2005-01-28 Keith Packard <keithp@keithp.com>
1846 Add a few pointers (#2284, #2285)
1848 2005-01-28 Keith Packard <keithp@keithp.com>
1851 * src/fcname.c: (FcNameBool):
1852 * src/fcxml.c: (FcTypeName), (FcTypecheckValue), (FcTypecheckExpr),
1853 (FcTestCreate), (FcEditCreate), (FcConfigLexBool), (FcParseBool),
1854 (FcParseAlias), (FcParseInclude), (FcParseTest), (FcParseEdit):
1855 Polite typechecking for test and edit expressions. Helps
1856 catch errors in the font configuration. (bug 229)
1858 2005-01-15 Alan Coopersmith <alan.coopersmith@sun.com>
1860 reviewed by: Keith Packard <keithp@keithp.com>
1863 Have --with-expat set EXPAT_CFLAGS (bug 2278)
1865 2005-01-13 Keith Packard <keithp@keithp.com>
1867 * doc/fontconfig-user.sgml:
1868 Add SEE ALSO section (bug 2085)
1870 2005-01-13 J. Ali Harlow <ali@juiblex.co.uk>
1872 reviewed by: Keith Packard <keithp@keithp.com>
1877 * fc-case/Makefile.am:
1878 * fc-glyphname/Makefile.am:
1879 * fc-lang/Makefile.am:
1880 * src/fontconfig.def.in:
1881 Cross compiling fixes (bug 280)
1883 2005-01-13 Keith Packard <keithp@keithp.com>
1886 Update blanks list (Closes bug 86)
1888 2005-01-04 Keith Packard <keithp@keithp.com>
1890 * src/fccache.c: (FcCacheFontSetAdd):
1891 Verify that every font pattern loaded from cache has
1892 both FC_FILE and FC_FAMILY entries.
1893 Attempt to fix bug #2219.
1895 2004-12-29 Keith Packard <keithp@keithp.com>
1899 * fontconfig/fontconfig.h:
1900 Update for version 2.2.98
1902 2004-12-29 Keith Packard <keithp@keithp.com>
1904 * fontconfig/fontconfig.h:
1905 Document ASCII limitations of Fc character conversion macros
1906 * src/fcstr.c: (FcStrCaseWalkerLong), (FcStrDowncase):
1907 Fix off-by-one error in utf-8 case walking code.
1908 Add FcStrDowncase (useful for testing case conversion functions)
1910 2004-12-29 Keith Packard <keithp@keithp.com>
1913 * fc-case/.cvsignore:
1914 clean up CVS ignore lists
1915 * fc-lang/iso-3166.txt:
1916 Add territory database
1918 2004-12-29 Tor Andersson <tor.andersson@gmail.com>
1920 Reviewed by: Keith Packard
1923 Remove Han characters from Korean orthography
1925 2004-12-29 Keith Packard <keithp@keithp.com>
1928 Reorder utility programs to make sure fc-case is run before fc-lang
1929 as fc-lang uses fcstr.c which uses fccase.h
1933 2004-12-29 Keith Packard <keithp@keithp.com>
1936 Adopt some RedHat suggestions for standard font configuration.
1940 * fc-case/CaseFolding.txt:
1941 * fc-case/Makefile.am:
1942 * fc-case/fc-case.c: (panic), (addFold), (ucs4_to_utf8),
1943 (utf8_size), (addChar), (foldExtends), (case_fold_method_name),
1944 (dump), (parseRaw), (caseFoldReadRaw), (main):
1945 * fc-case/fccase.tmpl.h:
1946 Add new helper program 'fc-case' to construct case folding
1947 tables from standard Unicode CaseFolding.txt file
1950 * src/fclist.c: (FcListValueHash):
1951 * src/fcstr.c: (FcStrCaseWalkerInit), (FcStrCaseWalkerLong),
1952 (FcStrCaseWalkerNext), (FcStrCaseWalkerNextIgnoreBlanks),
1953 (FcStrCmpIgnoreCase), (FcStrCmpIgnoreBlanksAndCase),
1954 (FcStrHashIgnoreCase), (FcStrIsAtIgnoreBlanksAndCase),
1955 (FcStrIsAtIgnoreCase), (FcStrStrIgnoreCase):
1956 Re-implement case insensitive functions with Unicode
1957 aware versions (including full case folding mappings)
1959 2004-12-13 Keith Packard <keithp@keithp.com>
1961 reviewed by: Owen Taylor <otaylor@redhat.com>
1963 * src/fcmatch.c: (FcFontSetSort):
1964 I changed FcFontSetSort to respect the generic aliases better
1965 in the face of language matching.
1967 What I did was to ammend the strict sort order used by FcFontSort so
1968 that it 'satisfies' the language specified in the pattern by locating
1969 the best matching font supporting each pattern language and then
1970 ignores language in the remaining fonts for purposes of matching.
1972 So, when asking for 'sans:lang=en', you'll get an English font first,
1973 and then the remaining fonts sorted with respect to the 'sans' alias
1974 alone -- pushing Kochi fonts ahead of other English-supporting Han fonts.
1976 2004-12-10 Jakub Pavelek <jakub.pavelek@nokia.com>
1978 reviewed by: Keith Packard <keithp@keithp.com>
1980 * fontconfig/fontconfig.h:
1983 Configuration changes to request synthetic emboldening of
1984 fonts. The actual emboldening code will live in Xft.
1986 2004-12-09 John Thacker <thacker@math.cornell.edu>
1988 reviewed by: Keith Packard <keithp@keithp.com>
1992 Currently Russian (ru) requires 0406 and 0456 (І and і), but these
1993 were eliminated in Russian in 1918 in favor of 0418 and 0438 (И and
1994 и), and don't even appear in KOI8-R. (The hypothesis that they
1995 don't appear in KOI8-R due to their similarity with Latin I and i is
1996 eliminated by their presence in KOI8-U.) I have a couple of fonts
1997 with Russian support that don't have the letter.
1999 Therefore, 0406 and 0456 should be removed from or commented out of
2002 2004-12-06 michael meeks <mmeeks@novell.com>
2004 Reviewed by: Keith Packard <keithp@keithp.com>
2006 * src/fcinit.c: (FcMemReport):
2008 * src/fclist.c: (FcObjectSetAdd):
2009 * src/fcpat.c: (FcValueListEntCreate), (FcPatternBaseFreeze),
2010 (FcPatternInsertElt), (FcPatternEqual), (FcObjectStaticName):
2011 * src/fcxml.c: (FcParsePatelt):
2012 memoize strings and share a single copy for all uses. Note that
2013 this could be improved further by using statically allocated blocks
2014 and gluing multiple strings together, but I'm basically lazy.
2015 In my environment with 800 font files, I get a savings of about 90KB.
2017 2004-12-06 Keith Packard <keithp@keithp.com>
2021 * config/Makedefs.in:
2024 * doc/fcatomic.fncs:
2025 * doc/fcblanks.fncs:
2026 * doc/fccharset.fncs:
2027 * doc/fcconfig.fncs:
2028 * doc/fcconstant.fncs:
2030 * doc/fcfontset.fncs:
2031 * doc/fcfreetype.fncs:
2033 * doc/fcmatrix.fncs:
2034 * doc/fcobjectset.fncs:
2035 * doc/fcobjecttype.fncs:
2036 * doc/fcpattern.fncs:
2037 * doc/fcstring.fncs:
2038 * doc/fcstrset.fncs:
2040 * doc/fontconfig-devel.sgml:
2041 * doc/fontconfig-user.sgml:
2043 * doc/version.sgml.in:
2044 * fc-cache/Makefile.am:
2045 * fc-cache/fc-cache.c:
2046 * fc-glyphname/Makefile.am:
2047 * fc-glyphname/fc-glyphname.c:
2048 * fc-glyphname/fcglyphname.tmpl.h:
2049 * fc-lang/Makefile.am:
2059 * fc-lang/az_ir.orth:
2093 * fc-lang/fc-lang.c:
2094 * fc-lang/fc-lang.man:
2095 * fc-lang/fclang.tmpl.h:
2140 * fc-lang/ku_ir.orth:
2173 * fc-lang/ps_af.orth:
2174 * fc-lang/ps_pk.orth:
2203 * fc-lang/ti_er.orth:
2204 * fc-lang/ti_et.orth:
2230 * fc-lang/zh_cn.orth:
2231 * fc-lang/zh_hk.orth:
2232 * fc-lang/zh_mo.orth:
2233 * fc-lang/zh_sg.orth:
2234 * fc-lang/zh_tw.orth:
2236 * fc-list/Makefile.am:
2237 * fc-list/fc-list.c:
2238 * fc-match/Makefile.am:
2239 * fc-match/fc-match.1:
2240 * fc-match/fc-match.c:
2241 * fontconfig/fcfreetype.h:
2242 * fontconfig/fcprivate.h:
2243 * fontconfig/fontconfig.h:
2264 Change files from ISO-Latin-1 to UTF-8
2266 2004-12-04 Keith Packard <keithp@keithp.com>
2269 Update links to new freedesktop.org locations
2271 Add uninstall-local to get rid of fonts.conf and local.conf if they
2272 match the distributed versions. Fixes 'make distcheck'
2274 2004-12-04 Keith Packard <keithp@keithp.com>
2278 * fontconfig/fontconfig.h:
2279 Updates for version 2.2.97
2281 2004-12-04 Owen Taylor <otaylor@redhat.com>
2283 reviewed by: Keith Packard <keithp@keithp.com>
2285 * fc-cache/fc-cache.c: (main):
2286 Sleep for two seconds before exiting to make sure timestamps
2287 for future changes have distinct mod times in the file system.
2290 Add Punjabi orthography. Bug #1671.
2292 2004-12-04 Keith Packard <keithp@keithp.com>
2295 Just remove the FC_FONTDATE -- it has locale issues and
2296 annoys redhat multi-arch installs. Now that all X fonts are
2297 included without prejudice, the chances of the date being at
2298 all interesting are rather limited. Bug #505.
2300 Add copyright and license
2302 2004-12-04 Keith Packard <keithp@keithp.com>
2305 Change default set of fonts to include all of
2306 /usr/X11R6/lib/X11/fonts (or wherever the X fonts are located).
2307 * doc/fontconfig-user.sgml:
2308 Document new <include>directory-name</include> semantics
2310 add <include ignore_missing="yes">conf.d</include>
2312 Add selectfont to ignore bitmap fonts, add comment for
2313 selectfont which accepts bitmap fonts.
2316 * src/fcxml.c: (FcConfigParseAndLoadDir), (FcConfigParseAndLoad):
2317 Allow <include> configuration elements to reference directories.
2318 Parse and load all files of the form [0-9]* in sorted order.
2320 2004-12-04 Keith Packard <keithp@keithp.com>
2323 Report command line for $srcdir/configure accurately.
2326 2004-12-04 Keith Packard <keithp@keithp.com>
2328 * src/fcfreetype.c: (FcFreeTypeQuery):
2329 Check for non-empty face->family_name and face->style_name
2330 before using those for the font. Empty names match everything.
2333 2004-12-04 Keith Packard <keithp@keithp.com>
2336 * fontconfig/fontconfig.h:
2337 * src/fcfreetype.c: (FcFreeTypeQuery):
2339 Create FC_FONTFORMAT from FT_Get_X11_Font_Format function where
2340 available. This provides font file format information (BDF, Type 1,
2341 PCF, TrueType) for each font. Closes #109.
2343 2004-12-04 Daniel Glassey <danglassey@ntlworld.com>
2345 reviewed by: Keith Packard <keithp@keithp.com>
2347 * doc/fontconfig-user.sgml:
2350 * fontconfig/fontconfig.h:
2351 * src/fcfreetype.c: (FcFreeTypeQuery), (addtag), (compareulong),
2352 (GetScriptTags), (FcFontCapabilities):
2354 Add detection for font capabilities (bug #105)
2356 2004-12-04 Keith Packard <keithp@keithp.com>
2359 Move existing fonts.conf to fonts.conf.bak
2362 Add detection of iconv
2364 * doc/fcpattern.fncs:
2365 * doc/fontconfig-devel.sgml:
2366 * doc/fontconfig-user.sgml:
2368 Document new selectfont elements
2371 Switch to UTF-8 in comment
2373 * fontconfig/fontconfig.h:
2375 Add fullname, and family/style/fullname language entries
2377 * src/fccache.c: (FcCacheFontSetAdd):
2378 * src/fcdir.c: (FcFileScanConfig):
2379 Respect selectfont/*/glob
2382 * src/fccfg.c: (FcConfigCreate), (FcConfigDestroy),
2383 (FcConfigCompareValue), (FcConfigPatternsAdd),
2384 (FcConfigPatternsMatch), (FcConfigAcceptFont):
2385 * src/fcxml.c: (FcElementMap), (FcVStackDestroy),
2386 (FcVStackPushPattern), (FcPopExpr), (FcParseAcceptRejectFont),
2387 (FcPopValue), (FcParsePatelt), (FcParsePattern), (FcEndElement):
2388 Add support for selectfont
2390 * src/fcfreetype.c: (FcSfntNameTranscode), (FcSfntNameLanguage),
2391 (FcStringInPatternElement), (FcFreeTypeQuery):
2392 Add multi-lingual family/style/fullname support
2394 * src/fclist.c: (FcListPatternMatchAny):
2395 Expose FcListPatternMatchAny (which selectfont/*/pattern uses)
2397 * src/fcpat.c: (FcPatternRemove), (FcPatternAppend),
2398 (FcObjectStaticName):
2399 Add new FcPatternRemove/FcPatternAppend.
2400 FcObjectStaticName stores computed pattern element names which
2401 are required to be static.
2403 2004-09-09 "NAKAMURA Ken'ichi" <nakamura@sbp.fp.a.u-tokyo.ac.jp>
2408 Remove spurious / after $(DESTDIR)
2410 2004-06-30 Keith Packard <keithp@keithp.com>
2414 * fontconfig/fontconfig.h:
2417 2004-06-30 Keith Packard <keithp@keithp.com>
2419 Provided by: Lubos Lunak <l.lunak@suse.cz>
2421 * src/fccfg.c: (FcConfigUptoDate):
2422 However FcConfigUptoDate() doesn't seem to work. See the attached
2423 patch. First there's an obvious misplaced parenthesis making it
2424 return always false, and second, even this call fails to detect font
2425 changes (e.g. adding a new font to
2426 /usr/X11R6/lib/X11/fonts/truetype). The patch should fix that as
2427 well. The problem seems to be triggered by my fonts.conf specifying
2428 only /usr/X11R6/lib/X11/fonts , and therefore config->configDirs
2429 doesn't include subdirs, unlike config->fontDirs.
2431 2004-06-03 Keith Packard <keithp@keithp.com>
2433 * fontconfig/fontconfig.h:
2434 Remove comma at end of FcResult enum definition.
2436 2004-05-29 Keith Packard <keithp@keithp.com>
2439 Add steps to md5sum release
2441 2004-05-29 Keith Packard <keithp@keithp.com>
2445 * fontconfig/fontconfig.h:
2448 2004-05-29 Keith Packard <keithp@keithp.com>
2450 * fontconfig/fontconfig.h:
2451 * src/fcmatch.c: (FcFontSetMatch):
2452 Add FcResultOutOfMemory to provide an accurate error when
2453 FcFontSetMatch fails in this way
2456 Make #warning about lacking various FreeType features indicate
2457 which version those features appeared so users know how to
2458 fix the problem (Thanks to Anton Tropashko)
2460 2004-05-05 Keith Packard <keithp@keithp.com>
2462 * src/fcfreetype.c: (FcFreeTypeCharSetAndSpacing):
2463 Replace MIN/MAX/ABS macros which happen to have come
2464 from FreeType with fontconfig-specific ones (FC_*)
2466 2004-04-23 Keith Packard <keithp@keithp.com>
2469 Extend release preparation instructions to include
2470 notification and distribution steps
2472 2004-04-23 Keith Packard <keithp@keithp.com>
2476 * fontconfig/fontconfig.h:
2477 Update to 2.2.94 (2.2.93 shipped with broken libtool bits)
2479 2004-04-23 Keith Packard <keithp@keithp.com>
2482 Ignore a few more autotool files
2484 2004-04-14 Keith Packard <keithp@keithp.com>
2487 Add instructions for doing a release
2489 * fontconfig.spec.in:
2490 clean up .spec file; perhaps this will be useful to somebody...
2494 * fontconfig/fontconfig.h:
2497 * fc-lang/fc-lang.c:
2498 Make 'scanopen' static so GCC doesn't whine about lacking prototype
2500 * fc-glyphname/Makefile.am:
2501 * fc-lang/Makefile.am:
2502 * fc-list/Makefile.am:
2503 * fc-match/Makefile.am:
2505 Add WARN_CFLAGS to pass -W flags for GCC systems
2507 * src/fcfreetype.c: (FcNoticeFoundry), (FcVendorMatch),
2508 (FcVendorFoundry), (FcGetPixelSize), (FcFreeTypeQuery):
2509 Change various char types around to match across
2511 Fixed bug in using available_sizes[i].height which
2512 is in pixels, not 64ths of a pixel.
2514 2004-03-06 Keith Packard <keithp@keithp.com>
2516 * src/fcfreetype.c: (FcFreeTypeQuery):
2517 Force FC_FOUNDRY and FC_WIDTH to always be set so that
2518 matches looking for explicit values prefer exact matches
2520 2004-03-02 Keith Packard <keithp@keithp.com>
2522 Supplied by: mfabian@suse.de (Mike FABIAN)
2524 * src/fcfreetype.c: (FcFreeTypeQuery):
2525 Bug #260 fc-cache generates wrong spacing values for bitmap fonts
2526 Was using (strcmp (a,b)) instead of (!strcmp(a,b)).
2528 2004-02-21 Manish Singh <yosh@gimp.org>
2530 * fc-glyphname/fc-glyphname.c: (main):
2531 Cast strlen to int for printf, so we're 64-bit clean.
2533 2004-02-11 Keith Packard <keithp@keithp.com>
2536 * src/fcfreetype.c: (FcGetPixelSize):
2537 Ok, so I messed up the test for y_ppem. Let's see if I
2538 got it right this time.
2540 2004-02-10 Keith Packard <keithp@keithp.com>
2543 * src/fcfreetype.c: (FcGetPixelSize):
2544 Pre-2.1.5 versions of FreeType didn't include y_ppem in the
2545 FT_Bitmap_Size record. Add a configure.in test for this
2546 and change the code accordingly (using height instead).
2548 2004-02-06 Keith Packard <keithp@keithp.com>
2551 Add Low Saxon orthography
2552 (Kenneth Rohde Christiansen <kenneth@gnu.org>)
2554 * src/fccfg.c: (FcConfigNewestFile):
2555 Oops. Left 'newest.set' unset, which would miscompute
2558 * src/fcfreetype.c: (FcGetPixelSize), (FcFreeTypeQuery),
2559 (FcFreeTypeCheckGlyph):
2560 Add FcGetPixelSize to extract correct pixel size from bdf/pcf
2561 font properties (which report the wrong value in current FreeType)
2563 Don't attempt to check for empty glyphs in non-scalable fonts; they
2566 2004-02-01 Tor Lillqvist <tml@iki.fi>
2568 * src/fccfg.c (FcConfigCreate): fontconfig, at least as used by
2569 GIMP and/or PangoFT2 on Windows, crashes when trying to save the
2570 cache if config->cache is NULL, which happens if FcConfigHome() is
2571 NULL. Guard against that by using the temp folder in that case.
2573 2004-01-03 Roozbeh Pournader <roozbeh@sharif.edu>
2575 * fc-lang/az_ir.orth:
2576 * fc-lang/ku_ir.orth:
2577 * fc-lang/ps_af.orth:
2578 * fc-lang/ps_pk.orth:
2579 Added orthographies for Iranian Azerbaijani and Kurdish, and Pashto
2580 (Afghan and Pakistani).
2582 Updated Urdu orthography with real data.
2584 2003-12-11 Carl Worth <cworth@east.isi.edu>
2586 * fc-list/Makefile.am (man_MANS): Move man_MANS into the 'if
2589 * fc-cache/Makefile.am (man_MANS): Move man_MANS into the 'if
2591 (all-local): Remove excessive whitespace.
2593 * autogen.sh: Add 'set -e' to abort when any program fails,
2594 (avoids printing of 'now type make' after configure aborts).
2596 2003-11-17 Eric Christopherson <rakko@charter.net>
2598 reviewed by: Keith Packard <keithp@keithp.com>
2601 * fontconfig/fcfreetype.h:
2603 Switch to FreeType 2.1.7 style includes. Bug #150.
2605 2003-11-16 Noah Levitt <nlevitt@columbia.edu>
2607 * fc-list/fc-list.sgml: Add some example usages.
2609 2003-11-10 Roozbeh Pournader <roozbeh@sharif.edu>
2612 Fixed a bug "FcStrtod" in handling some cases with two-byte decimal
2615 2003-10-27 Keith Packard <keith@keithp.com>
2618 * fontconfig/fontconfig.h:
2619 Update to version 2.2.92
2621 2003-10-27 Keith Packard <keithp@keithp.com>
2626 * fc-cache/Makefile.am:
2627 * fc-glyphname/Makefile.am:
2628 * fc-lang/Makefile.am:
2629 * fc-list/Makefile.am:
2630 * fc-match/Makefile.am:
2633 Yet more cleanups to finish getting 'make distcheck' working
2634 This has been tested to ensure that it even works from a _build
2637 2003-10-26 Keith Packard <keithp@keithp.com>
2641 * fc-cache/Makefile.am:
2642 * fc-glyphname/Makefile.am:
2643 * fc-lang/Makefile.am:
2644 * fc-lang/fc-lang.c: (scanopen), (scan), (main):
2645 * fc-list/Makefile.am:
2646 * fc-match/Makefile.am:
2647 Attempts to fix 'make distcheck' work. Things are
2648 progressing pretty well, but there are still failures
2649 long into the process dealing with docs (as always).
2651 The big changes here are mostly to make $(srcdir) != "."
2652 work correctly, fixing the docbook related sections and
2653 fc-lang were particularily tricky. Docbook refuses to load
2654 system entities from anywhere other than where the original .sgml
2655 file was located, so no luck looking in "." for the
2656 configure-generated version.sgml and confdir.sgml files.
2658 fc-lang needed help finding .orth files; added a -d option
2659 to set the directory as the least evil of many options.
2661 Now to go use a faster machine and try and wring out the last
2664 2003-10-26 Keith Packard <keithp@keithp.com>
2668 2003-10-26 Keith Packard <keithp@keithp.com>
2671 Include confdir.sgml.in in EXTRA_DIST
2673 2003-10-09 Josselin Mouette <joss@debian.org>
2675 * fc-cache/fc-cache.sgml fc-cache/Makefile.am:
2676 * fc-list/fc-list.sgml fc-list/Makefile.am:
2677 Replace fc-cache and fc-list manpages with more detailed, SGML
2680 2003-09-23 Owen Taylor <otaylor@redhat.com>
2682 * fontconfig/fontconfig.h src/fcdefault.c (FcDefaultSubstitute)
2683 src/fcname.c: Add a FC_HINT_STYLE key for patterns, with
2684 possible values HINT_NONE/HINT_SLIGHT/HINT_MEDIUM/HINT_FULL.
2687 2003-09-23 Owen Taylor <otaylor@redhat.com>
2689 * fc-lang/ka.orth: Remove Georgian capitals, they
2690 aren't used for normal writing. (Bug #116)
2692 2003-09-06 Noah Levitt <nlevitt@columbia.edu>
2694 * doc/fontconfig-devel.sgml:
2695 * doc/fontconfig-user.sgml:
2696 * fontconfig/fontconfig.h:
2698 * src/fcfreetype.c (FcFreeTypeCharSetAndSpacing): Add new spacing
2699 value FC_DUAL (dual-width, as some CJK fonts). (bug #111)
2701 * src/fcfreetype.c (FcFreeTypeCharSetAndSpacing): When checking for
2702 monospace and dual-width fonts, allow roughly a 3% variance in the
2705 2003-08-31 Manish Singh <yosh@gimp.org>
2707 * src/fccfg.c (FcConfigAppFontClear): Support passing NULL to
2710 2003-08-15 Carl Worth <cworth@isi.edu>
2712 * src/fcxml.c (FcEditDestroy): Fix leak of FcEdit.
2713 (FcPopExpr): Add comment about unhandled FcVStackGlob case.
2715 * src/fcpat.c (FcValueListEntDestroy): New function to support
2716 FcFini memory cleanup. Some statistics are not kept in
2718 (FcValueListFreeze): Move hashTable outside this function so it
2719 can be accessed by FcValueListThawAll.
2720 (FcValueListThawAll): New function complements FcValueListFreeze.
2721 (FcPatternBaseFreeze): Move hashTable outside this function so it
2722 can be accessed by FcPatternBaseThawAll.
2723 (FcPatternBaseThawAll): New function complements
2724 FcPatternBaseFreeze.
2725 (FcPatternThawAll): New function complements FcPatternFreeze.
2727 * src/fcinit.c (FcFini): Add new FcFini to cleanup everything.
2729 * src/fccharset.c (FcCharLeafEntCreate): Save pointers to all
2730 allocated FcCharLeafEnt "blocks" so they can be freed later.
2731 (FcCharSetFreezeLeaf): Move hashTable outside this function so it
2732 can be accessed by FcCharSetThawAllLeaf.
2733 (FcCharSetThawAllLeaf): New function complements FcCharSetFreezeLeaf.
2734 (FcCharSetFreezeBase): Move hashTable outside this function so it
2735 can be accessed by FcCharSetThawAll.
2736 (FcCharSetThawAll): New function complements FcCharSetFreeze.
2738 * src/fccfg.c (FcSubstDestroy): Fix leak of outer FcSubst.
2739 (FcConfigDestroy): Fic leak of FcBlanks.
2741 * fc-list/fc-list.c (main): Fix leak of FcObjectSet.
2742 (main): Add call to FcFini when finished.
2744 * fc-glyphname/fc-glyphname.c: Mark several local functions as
2745 static. Add prototypes.
2747 * doc/fcinit.fncs: Add documentation for FcFini function.
2749 * doc/edit-sgml.c: Mark several local functions as static. Add
2752 * doc/Makefile.am (DOC_MODULE): Fix "suspicious" lines.
2754 2003-06-15 Tor Lillqvist <tml@iki.fi>
2756 * test/run-test.sh (FONTCONFIG_FILE): Remove CRs from the out file
2757 before comparing (needed on Windows).
2759 * src/Makefile.am (install-libtool-import-lib): Fix cut&paste error.
2761 2003-06-13 Tor Lillqvist <tml@iki.fi>
2763 * fontconfig-zip.in (DEVZIP): Add share/doc directory. Add Fc*.3
2766 * configure.in: Set FC_DEFAULT_FONTS on Win32 to the
2767 WINDOWSFONTDIR token.
2769 * src/fontconfig.def.in: Move the LIBRARY and VERSION lines to the
2770 end, not to confuse libtool, which expects the EXPORTS line to be
2771 the first. Add FcConfigEnableHome.
2773 * src/fccfg.c: Check also for DLL_EXPORT as indication of being
2774 built as a DLL on Win32.
2776 2003-06-09 Keith Packard <keithp@keithp.com>
2778 * Tag version 2.2.90
2780 2003-06-09 Keith Packard <keithp@keithp.com>
2782 * Optimization in FcLangSetIndex was broken, occasionally
2783 returning a pointer to the wrong location on miss
2785 * Add fc-match to test font matching from the command line.
2787 2003-05-31 Keith Packard <keithp@keithp.com>
2789 * (Bug 85) add support for culmus fonts
2790 * (Bug 87) Automake 1.4 doesn't do man_MAN1 correctly
2791 * (Bug 88) Fix usage info on non-long option systems (Tim Mooney)
2793 2003-05-28 James Su <suzhe@turbolinux.com.cn>
2795 * Fix "contains" op for strings and langsets.
2797 2003-05-17 Keith Packard <keithp@keithp.com>
2799 * Fix build error with BDF prop local. Free langset after query
2801 2003-05-14 Keith Packard <keithp@keithp.com>
2803 * Extract spacing from XLFD atom
2805 2003-05-12 Juliusz Chroboczek <jch@pps.jussieu.fr>
2807 * Reinstate SETWIDTH_NAME parsing for legacy fonts,
2808 disappeared in 1.30.
2810 * Generate FC_SIZE and FC_DPI for legacy bitmap fonts
2812 2003-05-12 Keith Packard <keithp@keithp.com>
2814 * Use FcIsWidth to share code
2816 * Set FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH when scanning fonts to avoid
2817 misclassifying some Han fonts as monospaced.
2819 2003-05-07 Keith Packard <keithp@keithp.com>
2821 * Add filename-based accept/reject to ammend available fonts.
2823 * Change FT_ENCODING_ADOBE_CUSTOM to ft_encoding_adobe_custom for
2824 older FreeType releases.
2826 2003-05-06 Keith Packard <keithp@keithp.com>
2828 * Remove 0b82 and Tamil numbers from tamil
2829 orthography (Jungshik Shin <jshin@mailaps.org>)
2831 2003-05-04 Keith Packard <keithp@keithp.com>
2833 + Map glyph names in fonts with adobe custom encoding to unicode
2835 2003-05-02 Keith Packard <keithp@keithp.com>
2837 * Add FC_WEIGHT_BOOK as weight 75
2839 2003-04-30 Keith Packard <keithp@keithp.com>
2841 * Typo in bitstream foundry name
2843 2003-04-24 Keith Packard <keithp@keithp.com>
2845 * Eliminate italic_angle check for PS fonts
2847 2003-04-23 Noah Levitt <nlevitt@columbia.edu>
2849 * Getting closer to fixing /etc/fonts hard-coding.
2851 2003-04-22 Keith Packard <keithp@keithp.com>
2853 * Update autogen.sh to work with newer automake versions
2854 * Handle pattern elements moving during multiple edits
2856 2003-04-23 James Henstridge <james@daa.com.au>
2858 * doc/fontconfig-devel.sgml: close the <para> element.
2860 * doc/fcpattern.fncs: close the <para> element.
2862 * doc/func.sgml: close the <refsynopsisdiv> element.
2864 2003-04-22 Keith Packard <keithp@keithp.com
2866 * Update autogen.sh to work with newer automake versions
2867 * Handle pattern elements moving during multiple edits
2869 2003-04-17 Colin Walters <walters@debian.org>
2871 + Remove some unused variables, and initialize some other ones so
2872 gcc doesn't warn us.
2874 2003-04-16 Keith Packard <keithp@keithp.com>
2876 + tag version 2.1.94
2878 2003-04-16 Keith Packard <keithp@keithp.com>
2880 + add BDF property fetching support for foundry
2881 (from Juliusz Chroboczek)
2882 + add BDF property fetching support for width
2884 2003-04-11 Juliusz Chroboczek <jch@pps.jussieu.fr>
2886 + Implemented foundry generation for Type 1 and TrueType
2888 2003-04-11 Gerard Escalante <g2@magestudios.net>
2890 + Retrieve information from Type1 FontInfo dictionaries
2892 2003-04-07 Colin Walters <walters@verbum.org>
2894 + src/Makefile.am: Fix dummy makefile target names when
2895 MS_LIB_AVAILABLE isn't set.
2897 2003-03-22 Tor Lillqvist <tml@iki.fi>
2899 Changes for Windows:
2901 + On Windows with gcc (a.k.a. mingw) build as a DLL.
2903 + We don't want to hardcode the fonts.conf file location in the
2904 DLL, so we look up the DLL location at run-time in a DllMain()
2905 function. The fonts.conf location is deduced from that.
2907 + The colon can't be used as path separator on Windows,
2908 semicolon is used instead. File path components can be separated
2909 with either slash or backslash. Absolute paths can also begin
2910 with a drive letter.
2912 + Add internal function FcStrLastSlash that strrchr's the last
2913 slash, or backslash on Windows.
2915 + There is no link() on Windows. For atomicity checks, mkdir a
2916 lock directory instead.
2918 + In addition to HOME, also look for USERPROFILE.
2920 + Recognize the special font directory token WINDOWSFONTDIR, to
2921 use the system's font directory.
2923 + Remove the fontconfig-def.cpp that was obsolete. Add
2924 fontconfig.def(.in), without internal functions.
2926 + Add a fontconfig-zip(.in) script, used to build a binary
2929 Fri Mar 7 07:55:00 EST 2003 Mike A. Harris <mharris@redhat.com>
2930 + RPM specfile cleanups for 2.1.92: Removed man1/* and added man5/*
2931 to main package and man3/* to devel package
2933 + Added missing defattr(-, root, root) to main RPM package
2935 + Added HTML and text development documentation to -devel subpackage
2937 Wed Mar 5 05:08:00 EST 2003 Mike A. Harris <mharris@redhat.com>
2938 + Added back the configure macro options --disable-docs, otherwise
2939 fontconfig installs docs into /usr/share/doc/fontconfig (with no
2940 version number) unconditionally, causing RPM to fail the build due
2941 to _unpackaged_files_terminate_build. We pick up the pregenerated
2942 docs with %doc already.
2944 Wed Mar 5 04:26:20 EST 2003 Mike A. Harris <mharris@redhat.com>
2945 + Removed commented out rpm macro define at top of spec file,
2946 replacing it with a simple explanation, since rpm macros are
2947 expanded by rpm even in comments.
2949 + Changed /usr/bin to _bindir in BuildRequires lines
2951 + Cleaned up rpm postinstall script, and made fc-cache use _bindir
2953 + Reorganized file manifest lists
2955 Sun Mar 2 14:16:17 EST 2003 Owen Taylor <otaylor@redhat.com>
2957 + fontconfig.spec.in: Improvements from Red Hat spec file.
2959 + {fc-lang,fc-cache,fc-list}/Makefile.am: Add man pages.
2961 + docs/*.sgml: SGML fixes.
2963 Sat Mar 1 17:28:53 PST 2003 keithp
2964 + Ok, so the ChangeLog is a bit out of date
2966 + Lots of bugs fixed; most are in bugzilla, the
2967 biggest problems were in cache management where
2968 Owen discovered the library would lose badly when
2969 combining fonts-cache and ~/.fonts-cache data
2971 + Converted from autoconf to automake. This after
2972 getting patches accepted into libtool to allow
2973 the '-version-number' argument which lets
2974 packages set version numbers explicitly rather
2975 than the roundabout libtool way
2977 + Converted documentation to SGML using the docbook
2978 DTD. Now .txt and .html documents are installed
2979 in /usr/share/doc/fontconfig and there's no
2980 man page. Perhaps a man version can be written
2983 Sat Aug 31 15:21:22 PDT 2002 keithp
2984 + Xrender and Xft had several bugs related to
2985 rendering manually placed or poly-face text
2987 + Added more complete memory tracing in fontconfig
2988 Checked with (patched) mozilla and found no leaks
2990 + Updated Latin orthographies by comparing those from
2991 evertype.com with those from eki.ee. Tried to make
2992 sensible choices, including chars that occured in both
2993 and leaving some optional chars out that occured only
2996 Mon Aug 26 16:33:04 PDT 2002 keithp
2997 + Owen discovered that FcLangSetHasLang wasn't actually
2998 checking the language set.
3000 Mon Aug 26 13:37:23 PDT 2002 keithp
3001 + Append a version number to cache filenames
3003 Thu Aug 22 11:36:18 PDT 2002 keithp
3005 + Add "contains" and "not_contains" operators and elements to
3008 + Changed semantics of eq operator for LangSets to check for
3009 FcLangEqual so that any match will do
3011 + FcFontList was using FcConfigCompareValue (...FcOpEqual) instead
3012 of FcValueEqual to check for identical values when inserting into
3013 the results. This broke when the above semantic change was made,
3014 now it uses FcValueEqual which is "more correct" in any case.
3016 Thu Aug 22 00:32:29 PDT 2002 keithp
3018 + Reimplement FC_LANG as new datatype. Lists of strings
3019 was consuming over a megabyte of memory for 401 fonts.
3021 + Freeze patterns loaded from cache files. This shares
3022 common value lists and common patterns which saves
3023 considerable memory.
3025 + Change the denotation of 'constant' charsets to use special
3026 ref value instead of separate boolean.
3028 + Clean up leak tracing stuff, found several unannoted alloc/free
3031 Tue Aug 20 16:17:37 PDT 2002 keithp
3033 + Fix memory leak when parsing matrices from XML
3035 Mon Aug 19 11:57:27 PDT 2002 keithp
3037 + Fix autoconf files to pass FONTCONFIG_PATH on
3038 compile line so that ${prefix} gets substituted
3041 + Use getc_unlocked/putc_unlocked on systems that
3042 provide them to avoid damage done to stdio by posix
3044 + Eliminate FC_PATTERN and FcTypePattern in favor of
3045 an extended api for FcConfigSubstitute which takes
3046 both the font and the pattern.
3048 + Add 'sans serif' alias for 'sans-serif' as some apps
3049 can't handle hyphens in family names
3051 + Eliminate pretense of support for libxml2
3053 + Comment origins of Han orthographies
3055 Tue Jul 30 18:37:09 PDT 2002 keithp
3057 + Add binding property to edit element so that strong
3058 binding values may be inserted by the config file.
3059 The default remains weak.
3061 Sun 28 Jul 04:16:55 PDT 2002 keithp
3063 + Tagged release candidate 1 in the CVS tree and
3064 placed fcpackage.rc1.tar.gz for distribution
3066 Thu Aug 1 08:55:08 PDT 2002 keithp
3068 + Fixed autoconf builds to always specify install
3069 target files (for BSD). Also fixed to
3070 define FONTCONFIG_PATH in config.h so that
3071 nonstandard installs will actually work.