1 2006-03-05 Patrick Lam <plam@mit.edu>
2 * src/fcpat.c (FcPatternGetString):
4 Because we hacked FcPatternGet, we don't really need to expand the
5 filename again in FcPatternGetString.
7 2006-03-05 Patrick Lam <plam@mit.edu>
8 * src/fcpat.c (FcPatternGetString, FcPatternGet):
10 Ok, so some people (wine!) use FcPatternGet to fetch FC_FILE.
11 Make that work. Reported by Bernhard Rosenkraenzer.
13 2006-03-03 Patrick Lam <plam@mit.edu>
16 Include inttypes.h instead of stdint.h if appropriate.
18 2006-03-03 Patrick Lam <plam@mit.edu>
19 * fc-cat/fc-cat.c (FcFileIsDir):
20 * fc-glyphname/fc-flyphname.c:
22 More stub definitions and remove FcFileIsDir from fc-cat.
24 2006-03-03 Patrick Lam <plam@mit.edu>
27 Fix compilation on AIX with stub definitions (bug 6097).
29 2006-03-03 Patrick Lam <plam@mit.edu>
30 * src/fccache.c (FcCacheSkipToArch, FcDirCacheProduce):
31 * src/fcfreetype.c (GetScriptTags):
32 * src/fcfs.c (FcFontSetDistributeBytes):
33 * src/fcpat.c (FcValueListEntCreate, FcValueListNeededBytes):
35 Get rid of C++-style comments.
37 2006-03-03 Patrick Lam <plam@mit.edu>
40 Enable creation of 2.3.94 Debian packages.
42 2006-03-02 Egmont Koblinger <egmont@uhulinux.hu>
45 * src/fclang.c (FcCharSetForLang):
47 Fix suspicious return expression which causes junk
50 2006-02-24 Patrick Lam <plam@mit.edu>
54 * fontconfig/fontconfig.h:
56 Bump version to 2.3.94.
58 2006-02-24 Patrick Lam <plam@mit.edu>
63 2006-02-24 Patrick Lam <plam@mit.edu>
64 * conf.d/10-fonts-persian.conf:
66 Remove unconditional emboldening (per Behdad's instructions).
70 Add @s to hide some echos.
72 2006-02-24 Mike Fabian <mfabian@suse.de>
73 Takashi Iwai <tiwai@suse.de>
76 * src/fcfreetype.c (GetScriptTags):
78 Fix double-free on error case.
80 2006-02-21 Patrick Lam <plam@mit.edu>
81 * fc-lang/fc-lang.c (scan):
83 Strip \r and whitespace from input; fixes bug 3454.
85 2006-02-21 Patrick Lam <plam@mit.edu>
86 * fc-lang/fc-lang.c (main):
88 Allocate large arrays statically in fc-lang to fix crashes under
91 2006-02-21 Diego Petten <flameeyes@gentoo.org>
92 * src/fcfreetype.c (FcFreeTypeCharIndex):
94 Pass the buck; make fontconfig not crash on pango badness.
96 2006-02-21 Patrick Lam <plam@mit.edu>
97 * conf.d/10-fonts-persian.conf:
99 Use embeddedbitmap rather than rh_prefer_bitmap.
101 2006-02-21 Paul Cornett <paulcor1@bullseye.com>
104 * src/fccache.c (FcDirCacheWrite):
105 * src/fcdir.c (FcFileScanConfig):
106 * src/fcfreetype.c (FcStringInPatternElement):
107 * src/fcxml.c (FcParseFamilies):
108 * src/ftglue.c (ftglue_face_goto_table):
110 Eliminate redundancies.
112 2006-02-21 Kjartan Maraas <kmaraas@gnome.org>
115 * fc-list/fc-list.c (main):
116 * src/fcfreetype.c (FcFreeTypeCharSetAndSpacing):
117 * src/fcstr.c (FcStrStr):
118 * src/fcxml.c (FcConfigSaveAttr):
120 Eliminate unused vars reported by Intel's compiler.
122 2006-02-21 Aiet Kolkhi <aietkolkhi@gmail.com>
127 Remove one more archaic character.
129 2006-02-21 Ross Burton <ross@burtonini.com>
130 reviewed by: plam, keithp
132 * src/fcxml.c (FcParsePatelt):
134 Freeze patterns created by configuration file for tiny
135 memory savings (every little bit helps).
137 2006-02-21 Mike Fabian <mfabian@suse.de>
140 * fc-cat/fc-cat.c (main):
142 Initialize fontconfig library in fc-cat to avoid segfault.
144 2006-02-18 Patrick Lam <plam@mit.edu>
145 * fc-cache/fc-cache.c (scanDirs):
146 * src/fccache.c (FcCacheReadDirs):
147 * src/fcdir.c (FcDirScanConfig):
149 Fix the underlying cause of the below segfault (must usually
150 call FcDirCacheHasCurrentArch after FcDirCacheValid).
152 2006-02-18 Patrick Lam <plam@mit.edu>
153 * src/fccache.c (FcDirCacheHasCurrentArch):
155 Fix triggering of segfault caused by misreading cache files
156 (reported by fcrozat).
158 2006-02-17 Patrick Lam <plam@mit.edu>
159 * src/fcint.h (FC_CACHE_MAGIC):
161 Bump up magic version; we changed the binary format.
163 2006-02-17 Patrick Lam <plam@mit.edu>
164 * fc-cat/fc-cat.c (main):
166 Enable fc-cat to print out old-style cache info when given a
169 2006-02-16 Patrick Lam <plam@mit.edu>
170 * src/fccache.c (FcDirCacheHasCurrentArch):
172 Deal correctly with changing FC_CACHE_MAGIC.
174 2006-02-16 Patrick Lam <plam@mit.edu>
175 * fc-cache/fc-cache.c (usage, scanDirs, main):
177 Add -r --really-force option which blows away cache files and then
180 2006-02-16 Patrick Lam <plam@mit.edu>
181 * src/fccache.c (FcDirCacheUnlink, FcCacheCopyOld, FcDirCacheWrite):
183 Don't bail if fontconfig can't remove a dir cache file.
184 Skip the ID of a cache file when copying.
185 Eliminate 'source file too small' bug in FcDirCacheWrite.
187 2006-02-13 Patrick Lam <plam@mit.edu>
188 * src/fcfreetype.c (FcFreeTypeQuery):
190 Fix memory leak in error condition code.
192 2006-02-13 Mike Fabian <mfabian@suse.de>
194 * src/fcfreetype.c (FcFreeTypeQuery):
196 Skip bitmap fonts which can't even get it together enough to
197 declare a family name; this appears to reproduce previous
198 fontconfig behaviour.
200 2006-02-10 Takashi Iwai <tiwai@suse.de>
202 * src/fccache.c (FcDirCacheOpen):
204 Try to open /var/cache/fontconfig/[hashed name] before
205 fonts.cache-2 in a directory, because /var/cache/fontconfig
206 failures ought to be fixable, unlike fonts.cache-2 failures,
207 which may leave you screwed.
209 2006-02-10 Takashi Iwai <tiwai@suse.de>
211 * src/fcmatch.c (FcFontSetMatch):
213 Use a tri-state to mark the fonts which didn't get blocked but
214 were just missing an element, to distinguish them from the
215 fonts that do match the element.
217 2006-02-10 Takashi Iwai <tiwai@suse.de>
219 * src/fcmatch.c (FcFontSetMatch):
221 Don't kill fonts because they don't declare an element that's
224 2006-02-09 Patrick Lam <plam@mit.edu>
225 * src/fccache.c (FcGlobalCacheLoad, FcGlobalCacheSave,
226 FcDirCacheUnlink, FcDirCacheOpen, FcDirCacheWrite):
228 Define and pass O_BINARY to open if appropriate, for those
229 platforms that need it. Reported by Doodle.
231 2006-02-09 Patrick Lam <plam@mit.edu>
232 * src/fccharset.c (FcCharSetNeededBytes, FcCharSetSerialize,
235 Fix problem with missing 'en' due to euro.patch: change
236 cache file format slightly to coincide with that generated
239 2006-02-07 Patrick Lam <plam@mit.edu>
240 * src/fccache.c (FcCacheReadDirs):
244 2006-02-07 Patrick Lam <plam@mit.edu>
245 * src/fcdir.c (FcDirScanConfig):
247 Don't reject dirs that can't be normalized (fixes lilypond, and
248 is correct in the context of application font directories.)
250 2006-02-07 Takashi Iwai <tiwai@suse.de>
253 * src/fccache.c (FcCacheReadDirs):
255 Use normalized directory name exclusively in FcCacheReadDirs.
257 2006-02-07 Dirk Mueller <dmueller@suse.com>
260 * src/fcpat.c (FcValueHash, FcValueListHash, FcValueListEntCreate):
262 Perf optimizations. Inline FcValueCanonicalize,
263 reduce FcValueListPtrU usage, remove redundant cast.
265 2006-02-07 Takashi Iwai <tiwai@suse.de>
268 * src/fccharset.c (FcLangCharSetPopulate, FcCharSetInsertLeaf)
271 Fix missing FcCacheBankToIndex in FcCharSetInsertLeaf.
272 Declare extern for static arrays as arrays, not pointers.
273 (Part of the fix for 'fonts don't have en' issue after Euro patch.)
275 2006-02-07 Dirk Mueller <dmueller@suse.com>
288 Add Euro sign to list of symbols required by European languages.
290 2006-02-07 Patrick Lam <plam@mit.edu>
291 * src/fccache.c (FcCacheReadString):
293 Fix hidden variable warning.
295 2006-02-07 Dirk Mueller <dmueller@suse.com>
298 * src/fccache.c (FcCacheReadString, FcCacheSkipString):
300 Remove de-escaping logic because FcCacheWriteString
301 doesn't escape anyway. Do blockwise reading instead
302 of byte-wise for performance.
304 2006-02-06 Patrick Lam <plam@mit.edu>
305 Takashi Iwai <tiwai@suse.de>
307 * src/fccache.c (FcCacheReadDirs, FcCacheRead):
309 Don't loop infinitely on recursive symlinks (client-side).
311 2006-02-06 Takashi Iwai <tiwai@suse.de>
313 * fc-cache/fc-cache.c (scanDirs, main):
315 Don't loop infinitely on recursive symlinks.
317 2006-02-06 Takashi Iwai <tiwai@suse.de>
319 * src/fccache.c (FcGlobalCacheLoad, FcGlobalCacheReadDir,
320 FcGlobalCacheDirFind, FcGlobalCacheUpdate,
321 FcGlobalCacheSave, FcCacheReadDirs):
324 Skip subdirs when skipping over stale bits of global cache.
325 Introduce state machine into FcGlobalCacheDir to avoid
326 doing inappropriate operations on global dir entries, e.g.
327 writing out an out-of-date cache entry.
329 2006-02-06 Takashi Iwai <tiwai@suse.de>
331 * src/fcdir.c (FcFileScanConfig):
333 Hoist FcFileIsDir check out of FcFileScanConfig loop.
335 2006-02-06 Takashi Iwai <tiwai@suse.de>
338 * src/fccfg.c (FcConfigInodeMatchFontDir, FcConfigAddFontDir,
339 FcConfigAddFontDirSubdirs, FcConfigNormalizeFontDir):
341 Don't rescan when trying to normalize a non-declared font dir.
342 Don't add font dirs multiple times (even if they're aliased).
344 2006-02-06 Dirk Mueller <dmueller@suse.de>
347 * src/fcfs.c (FcFontSetUnserialize):
349 Explain apples/oranges comparison and fix compilation error.
351 2006-02-06 Dirk Mueller <dmueller@suse.de>
354 * src/fcfs.c (FcFontSetUnserialize):
356 Insert check for integer overflow in # of fonts.
358 2006-02-04 Behdad Esfahbod <behdad@cs.toronto.edu>
362 * fc-cache/Makefile.am:
363 * fc-cat/Makefile.am:
364 * fc-list/Makefile.am:
366 Make 'make distcheck' work with automake 1.6.3.
368 2006-02-03 Takashi IWAI <tiwai@suse.de>
371 * fc-cat/fc-cat.c (FcCacheGlobalFileReadAndPrint, main,
374 * src/fccache.c (FcGlobalCacheLoad, FcGlobalCacheSave,
375 FcDirCacheConsume, FcDirCacheWrite)
376 * src/fcxml.c (FcConfigMessage):
378 Check I/O call return values and eliminate unused variable
381 2006-02-03 Takashi Iwai <tiwai@suse.de>
384 * src/fccfg.c (FcConfigAppFontAddFile, FcConfigAppFontAddDir)
388 2006-02-03 Dirk Mueller <dmueller@suse.de>
391 * src/fcfs.c (FcFontSetUnserialize):
393 Gracefully handle the case where a cache asserts that it
394 has a negative number of fonts, causing overflow.
396 2006-02-03 Patrick Lam <plam@mit.edu>
397 * src/fccache.c (FcDirCacheUnlink):
399 Fix double free in error case.
401 2006-01-31 Behdad Esfabod <behdad@cs.utoronto.edu>
402 Stephan Kulow <coolo@suse.de>
405 * fc-cache/Makefile.am:
407 Replace 'stamp' target with mkinstalldirs.
409 2006-01-31 Mike Fabian <mfabian@suse.de>
412 * src/fccache.c (FcGlobalCacheLoad):
414 Toast broken global cache files.
416 2006-01-30 Patrick Lam <plam@mit.edu>
417 * src/fccache.c (FcGlobalCacheReadDir):
419 Actually use the directories that I added to the global cache.
422 2006-01-30 Mike Fabian <mfabian@suse.de>
425 * fc-cache/fc-cache.c (scanDirs):
427 Don't stop scanning if a directory in fonts.conf doesn't
428 exist, because subsequent directories might exist.
430 2006-01-30 Patrick Lam <plam@mit.edu>
431 * src/fccache.c (FcGlobalCacheLoad):
433 Make global cache work again after putting dir names into global
434 cache (I misplaced the recording of a file offset).
436 2006-01-30 Patrick Lam <plam@mit.edu>
437 * fc-cat/fc-cat.c (FcCacheGlobalFileReadAndPrint):
439 Update fc-cat to handle subdir lists in global cache file.
441 * src/fccache.c (FcGlobalCacheLoad):
443 Another FcCacheReadString return value check.
445 2006-01-30 Mike Fabian <mfabian@suse.de>
448 * src/fccache.c (FcGlobalCacheLoad, FcDirCacheUnlink
449 FcDirCacheOpen, FcDirCacheRead, FcDirCacheWrite):
451 Make fccache more resilient to broken cache files by checking
452 return value of FcCacheReadString all the time.
454 2006-01-30 Frederic Crozat <fcrozat@mandriva.com>
457 * fc-match/fc-match.1:
458 * fc-lang/fc-lang.man:
460 Remove references to dead fontconfig(3) manpages in
461 other fontconfig manpages.
463 2006-01-29 Behdad Esfabod <behdad@cs.utoronto.edu>
466 * doc/fcpattern.fncs:
468 Fix world's tiniest typo in code example.
470 2006-01-29 Mike Fabian <mfabian@suse.de>
473 * src/fccache.c (FcGlobalCacheReadDir):
475 Fix global cache reads of subdirectories.
477 2006-01-29 Patrick Lam <plam@mit.edu>
479 Add documentation for FcConfigNormalizeFontDir.
481 * src/fccache.c (FcGlobalCacheDirDestroy, FcGlobalCacheLoad,
482 FcGlobalCacheUpdate, FcGlobalCacheSave):
483 * src/fcdir.c (FcDirScanConfig):
486 Write directory information to global caches to fix make check
487 (reported by Ronny V. Vindenes). This changes the global cache
490 2006-01-27 Patrick Lam <plam@mit.edu>
491 * fc-cache/fc-cache.c (scanDirs):
492 * fontconfig/fontconfig.h:
494 * src/fccache.c (FcDirCacheValid, FcDirCacheHasCurrentArch):
496 Move FcConfigNormalizeFontDir call so that it doesn't result in
497 infinite recursion (reported by Ronny V. Vindenes).
499 2006-01-26 Patrick Lam <plam@mit.edu>
500 * src/fccache.c (FcDirCacheValid, FcDirCacheHasCurrentArch):
501 * src/fccfg.c (FcConfigNormalizeFontDir):
503 Add a couple of missing normalizations to make fc-cache work
504 right; only scan subdirectories once.
506 2006-01-26 Mike Fabian <mfabian@suse.de>
509 * src/fcacache.c (FcGlobalCacheReadDir):
511 Don't crash on non-existant directories in global cache.
513 2006-01-26 Patrick Lam <plam@mit.edu>
514 * src/fccache.c (FcGlobalCacheSave, FcDirCacheWrite):
515 * src/fccfg.c (FcConfigAddFontDirSubdirs, FcConfigNormalizeFontDir):
516 * src/fcdir.c (FcDirScanConfig):
517 * src/fcxml.c (FcEndElement):
519 Stop trampling the directory name when writing out caches.
520 (with Mike Fabian:) Beef up FcConfigNormalizeFontDir to scan
521 subdirs when necessary. Don't scan directories that can't be
524 2006-01-25 Patrick Lam <plam@mit.edu>
525 * src/fccache.c (FcDirCacheOpen, FcDirCacheWrite):
526 * src/fccfg.c (FcConfigEvaluate):
527 * src/fcfreetype.c (FcPatternAddWithBinding):
529 Fix additional memory leaks reported by Ronny V. Vindenes: don't
530 invoke FcValueSave on hashed static strings in
531 FcPatternAddWithBinding.
533 Add another st_dev check in FcDirCacheOpen.
535 2006-01-24 James Su <james.su@gmail.com>
538 * src/fcfreetype.c (FcFreeTypeIsExclusiveLang):
539 * fc-lang/zh_hk.orth:
541 Treat zh-hk fonts differently from zh-tw fonts. This patch may
542 cause fontconfig to treat A-X fonts differently from A-Y fonts;
543 please mail the fontconfig list if this causes any problems.
545 2006-01-24 Patrick Lam <plam@mit.edu>
546 * src/fccache.c (FcDirCacheUnlink, FcDirCacheWrite):
547 * src/fcfreetype.c (FcFreeTypeQuery):
549 Fix memory leaks reported by Ronny V. Vindenes.
551 2006-01-19 Andreas Schwab <schwab@suse.de>
554 * src/fcpat.c (FcStrNeededBytes):
556 Fix for unaligned memory accesses.
558 2006-01-18 Mike Fabian <mfabian@suse.de>
561 * src/fcdir.c (FcDirScanConfig):
563 Properly order the FcConfigAddFontDir and FcConfigNormalizeFontDir
564 calls to avoid crashes.
566 2006-01-14 Patrick Lam <plam@mit.edu>
567 * src/fccache.c (FcDirCacheConsume):
569 Fix segfault when consuming zero-length caches in fc-cat
570 (which has no config, so FcConfigAddFontDir shouldn't be called.)
572 2006-01-14 Patrick Lam <plam@mit.edu>
573 * fc-cache/fc-cache.c (scanDirs):
574 * fontconfig/fontconfig.h:
575 * src/fccache.c (FcGlobalCacheReadDir, FcGlobalCacheUpdate,
576 FcGlobalCacheSave, FcDirCacheUnlink, FcDirCacheOpen):
577 * src/fccfg.c (FcConfigBuildFonts, FcConfigNormalizeFontDir):
578 * src/fcdir.c (FcDirScanConfig):
581 Compare device numbers as well as inodes.
582 Always normalize directory names before comparing them.
584 2006-01-11 Mike Fabian <mfabian@suse.de>
587 * fc-cat/fc-cat.c (FcCacheGlobalFileReadAndPrint):
589 Allocate extra space for appended '/' in directory name.
591 2006-01-10 Patrick Lam <plam@mit.edu>
592 * src/fccache.c (FcDirCacheConsume, FcDirCacheOpen,
593 FcDirCacheValid, FcDirCacheHasCurrentArch,
594 FcDirCacheUnlink, FcDirCacheRead, FcDirCacheConsume):
595 * fc-cache/fc-cache.c (main):
597 Explicitly add font dirs to config.fontDirs even if they're empty.
598 Set current config in fc-cache.c.
599 Fix treatment of cache directory as read from cache file; don't
600 use string equality to determine if we have the right file,
603 2006-01-09 Patrick Lam <plam@mit.edu>
604 * fc-cache/fc-cache.c (scanDirs):
605 * fc-cat/fc-cat.c (FcCacheGlobalFileReadAndPrint, FcCacheFileRead):
606 * src/fccache.c (FcGlobalCacheReadDir, FcCacheReadDirs,
607 FcDirCacheRead, FcDirCacheConsume, FcDirCacheWrite):
608 * src/fccfg.c (FcConfigNormalizeFontDir):
609 * src/fcdir.c (FcDirScanConfig):
612 Normalize font dirs by using the form, as given in fonts.conf, and
613 recorded in FcConfig's fontDirs string set, as canonical.
615 Actually update config.fontDirs as font directories are scanned.
617 2006-01-08 James Su <james.su@gmail.com>
618 * src/fcmatch.c (FcFontSetMatch):
620 Fix matching bug when multiple elements match; don't use
621 the sum of all scores, but the best score.
623 Also more perf opts, e.g. evaluate best over all font sets
624 rather than on a per-set basis (and other changes).
626 2006-01-08 Patrick Lam <plam@mit.edu>
627 * src/fccache.c (FcDirCacheConsume):
629 Properly skip past dir caches that contain zero fonts (as occurs
630 in global caches.) Reported by Mike Fabian.
632 2006-01-06 Patrick Lam <plam@mit.edu>
633 * src/fcdbg.c (FcPatternPrint):
635 Print out full pathname in fc-match -v as well. Reported by
638 2006-01-06 Mike Fabian <mfabian@suse.de>
641 * src/fcname.c (FcNameParse):
643 Fix bug where fc-match crashes when given __DUMMY__ property to
646 (I added the __DUMMY__ string to enable callers of
647 FcObjectToPtrLookup to distinguish an error return from a
648 successful return. -PL)
650 2006-01-05 Patrick Lam <plam@mit.edu>
653 Add self to AUTHORS list.
655 * fc-cat/fc-cat.c (FcCacheGlobalFileReadAndPrint,
656 FcCacheFileRead, FcCachePrintSet, main):
657 * src/fccache.c (FcGlobalCacheLoad, FcGlobalCacheUpdate,
658 FcGlobalCacheSave, FcCacheNextOffset,
659 FcDirCacheHasCurrentArch, FcDirCacheRead,
660 FcDirCacheConsume, FcDirCacheWrite):
662 * src/fcpat.c (comment):
664 Minor change to global cache file format to fix fc-cat bug
665 reported by Frederic Crozat, and buglet with not globally caching
666 directories with zero fonts cached.
668 2006-01-02 Lubos Lunak <l.lunak@suse.cz>
671 * src/fccfg.c (FcConfigEvaluate):
673 Fix double-free which occurs because FcValueCanonicalize doesn't
674 create an extra copy of the returned value, it only canonicalizes
677 2006-01-02 Patrick Lam <plam@mit.edu>
678 * doc/fontconfig-user.sgml:
680 Fix version of .cache file (currently 1 -> currently 2). Reported
683 2005-12-21 Jinghua Luo <sunmoon1997@gmail.com>
686 * src/fcpat.c (FcPatternAddFullFname, FcPatternFindFullFname):
688 Shut up GCC warnings on amd.
690 2005-12-20 Patrick Lam <plam@mit.edu>
694 * fontconfig/fontconfig.h:
696 Bump version to 2.3.93.
698 2005-12-20 Patrick Lam <plam@mit.edu>
699 * src/fccharset.c (FcLangCharSetPopulate):
700 * src/fcint.h (FcCacheBankToIndex):
702 Avoid check on _fcBankId nullness and fix case where it used to
705 2005-12-20 Patrick Lam <plam@mit.edu>
706 * src/fcxml.c (FcConfigParseAndLoad):
708 Use open instead of fopen (requested by Phil Race for Sun).
710 2005-12-20 Patrick Lam <plam@mit.edu>
711 * src/fccache.c (FcDirCacheWrite);
712 * fc-cache/Makefile.am:
714 Fix GCC4 warning and Makefile brokenness for /var/cache/fontconfig
717 2005-12-20 Patrick Lam <plam@mit.edu>
718 * src/fcfreetype.c (FcFreeTypeQuery):
720 Restore code to skip over PCF fonts that have no encoded
722 (We guess that a font is PCF by presence of the PIXEL_SIZE
725 2005-12-12 Patrick Lam <plam@mit.edu>
726 * src/fccache.c (FcDirCacheOpen, FcDirCacheWrite):
728 Read and write the original location as a fallback for the
729 hashed cache file locations. This is mostly for users to be
730 able to have per-directory cache files.
732 2005-12-12 Patrick Lam <plam@mit.edu>
733 * fc-cache/fc-cache.c (scanDirs):
734 * fc-cache/Makefile.am:
735 * src/fccache.c (FcDirCacheHashName):
737 Improve error message when fc-cache can't write the cache. Add
738 missing slash. Reported by Behdad. Incorporate Behdad's patch to
739 create /var/cache/fontconfig when appropriate.
741 2005-12-12 Behdad Esfahbod <behdad@cs.toronto.edu>
744 * src/fcxml.c (FcConfigGetAttribute):
746 Fix crash reported by Frederic Crozat when using libxml2.
748 2005-12-09 Patrick Lam <plam@mit.edu>
751 * fc-cache/Makefile.am:
752 * fc-cat/Makefile.am:
754 * fc-cat/fc-cat.c (FcCacheGlobalFileReadAndPrint, FcCacheFileRead):
755 * fontconfig/fontconfig.h (FC_CACHE_SUFFIX):
756 * src/fccache.c (FcCacheSkipString, FcGlobalCacheLoad,
757 FcGlobalCacheSave, FcCacheNextOffset, FcDirCacheValid,
758 FcDirCacheHasCurrentArch, FcDirCacheHashName,
759 FcDirCacheOpen, FcDirCacheRead, FcDirCacheWrite):
761 Migrate cache files from fonts directories to
762 /var/cache/fontconfig. This helps make fontconfig FHS-compliant,
763 but requires that all caches get rebuilt.
765 Also, autogen.sh now needs the additional parameter
766 --localstatedir=/var.
768 2005-12-07 Patrick Lam <plam@mit.edu>
769 * src/fcpat.c (FcPatternAddString):
771 Because we've changed FcPatternAddString to use FcStrStaticName
772 and not FcValueSave, explicitly handle the case of a null string.
774 2005-12-06 Patrick Lam <plam@mit.edu>
775 * fc-cat/fc-cat.c (FcCachePrintSet, FcCacheGlobalFileReadAndPrint):
779 2005-12-05 Patrick Lam <plam@mit.edu>
780 * src/fcname.c (FcNameGetObjectType):
782 Don't assign types to user object names.
784 2005-12-05 Patrick Lam <plam@mit.edu>
785 * src/fcpat.c (FcValueDestroy, FcValueListDestroy, FcStrHashed):
787 Don't free strings that have been returned from FcStrStaticName.
789 2005-12-01 Patrick Lam <plam@mit.edu>
790 * fc-cat/fc-cat.c (FcCacheGlobalFileReadAndPrint, main):
792 Add codepath for reading global cache files as well.
794 2005-12-01 Behdad Esfahbod <behdad@cs.toronto.edu>
797 * conf.d/10-fonts.persian.conf:
798 * conf.d/Makefile.am:
800 Add config file for Persian fonts from Sharif FarsiWeb, Inc.
802 2005-11-30 Behdad Esfahbod <behdad@cs.toronto.edu>
805 * src/fcxml.c (FcConfigParseAndLoad):
807 Only add a config file to the set of config files once.
809 2005-11-29 Patrick Lam <plam@mit.edu>
810 * src/fcint.h (FcCacheBankToIndex);
812 Fix segfault by guarding array dereference.
814 2005-11-29 Dirk Mueller <dmueller@suse.de>
818 * src/fccache.c (FcDirCacheConsume, FcCacheHaveBank,
819 FcCacheBankToIndex, FcCacheBankToIndexMTF,
823 Refactor FcCacheBankToIndex into an inlineable part
824 (in fcint.h) which checks the front of the list and a
825 non-inlineable part which finds and moves the appropriate element
826 to the front of the list.
828 2005-11-29 Patrick Lam <plam@mit.edu>
829 * src/fccfg.c (FcConfigBuildFonts):
830 * src/fccache.c (FcCacheReadDirs):
832 Make the perf guys hate me a bit less: hoist the directory-name
833 FcConfigAcceptFont check for cached fonts up to directory cache
834 read time, rather than running it for each font.
836 2005-11-29 Patrick Lam <plam@mit.edu>
837 * src/fccfg.c (FcConfigBuildFonts):
839 * src/fcpat.c (FcPatternFindFullFname):
841 Don't make FcPatternFindFullFname available to fccfg, it's not
842 really safe. Instead go through FcPatternGetString (sorry,
843 perf guys.) Also, use globs for dirs as well.
845 2005-11-28 Patrick Lam <plam@mit.edu>
846 * src/fccfg.c (FcConfigBuildFonts):
850 2005-11-28 Patrick Lam <plam@mit.edu>
852 * src/fcpat.c (FcPatternFindFullFname):
853 * src/fccfg.c (FcConfigBuildFonts):
855 Fix problem dating back at least to 2.3.2 where globs weren't
856 being applied to patterns loaded from a cache.
858 2005-11-28 Patrick Lam <plam@mit.edu>
859 * doc/fontconfig-user.sgml:
861 Fix some obvious spelling mistakes.
863 2005-11-28 Dirk Mueller <dmueller@suse.com>
864 Stephan Kulow <coolo@suse.de>
867 * src/fcmatch.c (FcFontSetMatch):
869 Don't kill all fonts during match (oops!)
872 2005-11-25 Dirk Mueller <dmueller@suse.com>
873 Stephan Kulow <coolo@suse.de>
874 Michael Matz <matz@suse.de>
877 * src/fcmatch.c (FcObjectPtrToMatcher, FcCompareValueList,
880 Rewrite FcFontSetMatch to a path-finding based algorithm, i.e.
881 inline FcCompare into FcFontSetMatch and reorder the
882 loops, adding a boolean array which blocks patterns from future
883 consideration if they're known to not be best on some past
886 2005-11-26 Dirk Mueller <dmueller@suse.com>
889 * src/fcmatch.c (FcCompareValueList):
893 2005-11-25 Patrick Lam <plam@mit.edu>
894 * src/fcmatch.c (FcMatchObjectPtrsInit, FcCompareValueList):
896 Don't do random matching when bad objects are passed into
899 2005-11-25 Patrick Lam <plam@mit.edu>
901 * src/fcpat.c (FcPatternEnsureBank, FcPatternDistributeBytes,
902 FcPatternSerialize, FcPatternUnserialize,
903 FcValueListEnsureBank, FcValueListDistributeBytes,
904 FcValueListUnserialize):
906 Rename fcpatterns, fcpatternelts, fcvaluelists to _fcPatterns,
907 _fcPatternElts, _fcValueLists for consistency.
909 2005-11-25 Dirk Mueller <dmueller@suse.com>
914 Pass the FcObjectPtr to FcCompareValueList, not the char * (perf).
916 2005-11-25 Patrick Lam <plam@mit.edu>
918 * src/fccache.c (FcDirCacheConsume):
919 * src/fccharset.c (FcCharSetUnserialize):
920 * src/fcfs.c (FcFontSetUnserialize):
921 * src/fclang.c (FcLangSetUnserialize):
922 * src/fcname.c (FcObjectUnserialize):
923 * src/fcpat.c (FcStrUnserialize, FcValueListUnserialize,
924 FcPatternUnserialize):
926 Pass around FcCache *s to the Unserialize functions for extra
927 consistency (and less overhead, for what that's worth).
929 2005-11-24 Dirk Mueller <dmueller@suse.com>
933 * src/fcmatch.c (FcCompare*, FcFontSetSort):
934 * src/fcname.c (FcNameUnparseValue):
936 Inline the *PtrU functions to gain perf.
937 Remove unneeded params for the FcCompare* functions.
939 2005-11-24 Dirk Mueller <dmueller@suse.com>
942 * src/fcint.h, fontconfig/fontconfig.h:
944 Move FC_BANK_DYNAMIC, FC_BANK_FIRST to internal header.
946 * src/fcpat.c, src/fcint.h, src/fcname.c:
948 Check for type validity during FcPatternAddWithBinding, don't
949 verify type in FcFontMatch, don't call FcCanonicalize here
950 (which always does a deep copy).
952 2005-11-24 Dirk Mueller <dmueller@suse.com>
955 * src/fcmatch.c (FcCompareNumber, FcCompareString, FcCompareFamily):
956 * src/fcpat.c (FcPatternAddWithBinding):
958 Make FcCompareString and FcCompareFamily less expensive.
959 Only add a value for FC_FAMILY if the proposed value is a string.
961 2005-11-24 Dirk Mueller <dmueller@suse.com>
964 * src/fcdbg.c (FcDebug, FcDebugInit, FcPatternPrint):
965 * src/fcinit.c (FcInitLoadConfig, FcInitLoadConfigAndFonts):
966 * src/fcint.h (FcDebug):
968 Inline FcDebug invocations and only initialize once, in FcInit*.
969 Improve debug msg in FcPatternPrint.
971 2005-11-23 Frederic Crozat <fcrozat@mandriva.com>:
974 * fontconfig/fontconfig.h:
977 Minor code warning cleanups.
979 2005-11-23 Frederic Crozat <fcrozat@mandriva.com>:
982 * fc-match/fc-match.c (main):
984 Make getopt_long accept -s parameter to fc-match as well.
986 2005-11-21 Dirk Mueller <dmueller@suse.com>
989 * src/fcmatch.c (FcCompareValueList):
991 Manually perform inlining & partial redundancy elimination to
992 reduce calls to FcValueListPtrU.
994 2005-11-21 Dirk Mueller <dmueller@suse.com>
997 * src/fcstr.c (FcStrFree, FcStrCaseWalkerInit, FcStrCaseWalkerLong,
998 FcStrCaseWalkerNext, FcStrCaseWalkerNextIgnoreBlanks):
1000 Only invoke strlen() when really necessary.
1002 2005-11-19 Matthias Clasen <mclasen@redhat.com>
1006 * src/fcfreetype.c (FcGetPixelSize, FcFreeTypeQuery, GetScriptTags,
1007 FcFontCapabilities):
1011 Get rid of the use of freetype internal headers in fcfreetype.c,
1012 since those headers will go away with freetype 2.2. Replace with
1013 public domain ftglue code from pango. Note that the patch removes
1014 some extra error checking in FT_Get_BDF_Property() and comments
1015 out the skipping of empty pcf fonts.
1017 2005-11-19 Jinghua Luo <sunmoon1997@gmail.com>
1020 * fc-lang/fc-lang.c (main):
1022 Further fix of patch from 2005-11-04: miscounted numbers count
1023 (numbers_count); didn't strip duplicate numbers (langBankNumbers);
1024 and leafidx_offset and numbers_offset in fcLangCharSets are wrong.
1026 Removed leafidx_count and numbers_count since they are the same
1027 and replaced them with offset_count.
1029 2005-11-18 Frederic Crozat <fcrozat@mandriva.com>
1032 * fc-cat/fc-cat.c (main):
1034 Don't crash when fc-cat invoked with no arguments.
1036 2005-11-18 Frederic Crozat <fcrozat@mandriva.com>
1039 * src/fcxml.c (FcConfigSaveAttr, FcConfigParseAndLoad):
1041 Fix invalid read access caused by premature free and
1042 GCC4 warnings in libxml2 codepath.
1044 2005-11-17 Jinghua Luo <sunmoon1997@gmail.com>
1047 * src/fccfg.c (FcConfigValues):
1049 List iteration not needed in FcConfigValues, since it's building
1050 up the list itself; we can just strip FcVoid elements during
1053 2005-11-17 Patrick Lam <plam@mit.edu>
1054 * src/fccfg.c (FcConfigValues):
1056 Fix crash on invalid constants in config files (forgot to update
1057 a pointer upon list iteration.)
1059 2005-11-17 Frederic Crozat <fcrozat@mandriva.com>
1062 * src/fcxml.c (FcTypecheckExpr):
1064 Complain about invalid constants in config files.
1066 2005-11-17 Andreas Schwab <schwab@suse.de>
1069 * src/fccache.c (FcGlobalCacheSave):
1071 Don't add current_arch_start more than once.
1073 2005-11-16 Patrick Lam <plam@mit.edu>
1074 * src/fccharset.c (FcCharSetDistributeBytes, FcCharSetUnserialize):
1075 * src/fcfs.c (FcFontSetUnserialize):
1076 * src/fcname.c (FcObjectDistributeBytes, FcObjectUnserialize):
1077 * src/fcpat.c (FcStrUnserialize):
1079 Fix ordering of ALIGN with respect to saving block_ptr; add
1080 another ALIGN to fcfs.c.
1082 2005-11-16 Patrick Lam <plam@mit.edu>
1083 * src/fccache.c (FcDirCacheProduce)
1085 Fix case where alignment bytes bumped up metadata->count
1086 causing unwarranted failures to write cache files.
1087 (Reported by Stephan Kulow).
1089 2005-11-16 Patrick Lam <plam@mit.edu>
1090 * src/fccache.c (FcDirCacheProduce):
1091 * src/fccharset.c (FcCharSetDistributeBytes):
1092 * src/fcfs.c (FcFontSetDistributeBytes):
1094 * src/fclang.c (FcLangSetDistributeBytes):
1095 * src/fcname.c (FcObjectDistributeBytes):
1096 * src/fcpat.c (FcPatternNeededBytes, FcValueListNeededBytes,
1099 Add *NeededBytesAlign(), which overestimates the padding which is
1100 later added by the new ALIGN macro. Fix alignment problems on
1101 ia64 and s390 by bumping up block_ptr appropriately. (Earlier
1102 version by Andreas Schwab).
1104 2005-11-16 Stephan Kulow <coolo@kde.org>
1109 Use sysconf to determine proper PAGESIZE value; this
1110 appears to be POSIX-compliant. (reported by Andreas Schwab)
1112 2005-11-04 Patrick Lam <plam@mit.edu>
1113 * fc-lang/fc-lang.c:
1118 Fix bug 2878 (excessive relocations at startup for charsets,
1119 reported by Ross Burton): fc-lang/fc-lang now creates the
1120 static form of the langset, not the dynamic form, so that
1121 the charsets should now be in .rodata.
1123 2005-11-04 Patrick Lam <plam@mit.edu>
1124 * src/fcdir.c (FcDirScanConfig):
1126 Add test for validity of directory caches that
1127 somehow got lost (reported by make distcheck).
1129 2005-11-04 Patrick Lam <plam@mit.edu>
1133 * fontconfig/fontconfig.h:
1135 Bump version to 2.3.92.
1137 2005-11-02 Patrick Lam <plam@mit.edu>
1138 * src/fcpat.c (FcPatternDuplicate):
1140 Fix argument ordering problem in call to FcPatternTransferFullFname.
1142 2005-11-02 Patrick Lam <plam@mit.edu>
1143 * src/fcfreetype.c (FcFreetypeQuery):
1144 * src/fcpat.c (FcPatternDestroy, FcPatternDuplicate,
1145 FcPatternTransferFullFname):
1147 Fix warnings and embarrassing double-free error.
1149 2005-11-02 Zhe Su <zsu@novell.com>
1154 Change the rule for artificial emboldening in fonts.conf.in. This
1155 enables the support for artificial emboldening included in cairo.
1157 2005-11-02 Patrick Lam <plam@mit.edu>
1158 * src/fcpat.c (FcPatternDestroy, FcPatternTransferFullName):
1160 Don't zero out full names for FC_REF_CONSTANT fonts;
1161 also, duplicate full names when transferring, and free
1162 full names when freeing the associated font.
1163 Reported by Jinghua Luo.
1165 2005-11-02 Patrick Lam <plam@mit.edu>
1166 * fc-cache/fc-cache.c (scanDirs):
1167 * src/fcpat.c (FcValueListSerialize):
1169 Revert the previous patch and commit the correct patch:
1170 I forgot a canonicalization in FcValueListSerialize, so
1171 that it would choke on already-serialized input files. Duh!
1173 2005-11-02 Patrick Lam <plam@mit.edu>
1174 * fc-cache/fc-cache.c (scanDirs):
1176 Forcibly rescan a directory before writing a fresh local
1177 cache file for that directory, fixing the losing-fonts
1178 problem reported by Mike Fabian and also apparently the
1179 font cache file corruption.
1181 2005-11-02 Patrick Lam <plam@mit.edu>
1182 * src/fccache.c (FcGlobalCacheLoad):
1184 Fix thinko: actually, the whole global cache is stale
1185 if the global cache is older than the (newest) config file.
1187 2005-11-02 Patrick Lam <plam@mit.edu>
1188 * src/fccache.c (FcGlobalCacheLoad):
1189 * src/fccfg.c (FcConfigModifiedTime, FcConfigBuildFonts):
1192 Declare the global cache of a directory's contents to be stale if
1193 the directory is newer than the (newest) configuration file.
1195 2005-10-31 Patrick Lam <plam@mit.edu>
1197 * src/fclist.c (FcListAppend):
1198 * src/fcmatch.c (FcFontRenderPrepare):
1199 * src/fcpat.c (FcPatternTransferFullFname, FcPatternDuplicate,
1200 FcPatternFreeze, FcPatternBaseFreeze):
1202 Copy the full pathname whenever duplicating an FcPattern; otherwise,
1203 applications continue breaking.
1205 2005-10-31 Patrick Lam <plam@mit.edu>
1206 * fc-cat/fc-cat.c (FcCacheFileRead, main):
1207 * src/fcfreetype.c (FcFreeTypeQuery):
1209 Fix small memory error (tried to free argv); use basename and
1210 dirname correctly (they can modify their arguments).
1212 2005-10-31 Patrick Lam <plam@mit.edu>
1220 Reinstate basename patch, but keep a hash table linking FcPatterns
1221 to their fully-qualified font names for clients' benefit. Clients
1222 only pay for the font names once they request the FC_FILE property
1223 from an FcPattern, but the font name is malloc'd at that point (i.e.
1224 not mmapped: that's impossible, since it may vary between machines.)
1225 Clients do have to pay for a copy of the path name per cache file.
1227 Note that FcPatternGetString now does some rewriting if you ask
1228 for an FC_FILE, appending the pathname as appropriate.
1230 2005-10-31 Patrick Lam <plam@mit.edu>
1231 * src/fcfreetype.c (FcFreeTypeQuery):
1233 Revert basename patch, which breaks fontconfig clients on my system.
1235 2005-10-25 Jinghua Luo <sunmoon1997@gmail.com>
1238 * fontconfig/fonts.conf.in:
1239 * fontconfig/fontconfig.h:
1243 Add FC_EMBEDDED_BITMAP object type to tell Xft/Cairo whether
1244 to load embedded bitmaps or not.
1246 2005-10-25 Patrick Lam <plam@mit.edu>
1247 * src/fcfreetype.c (FcFreeTypeQuery):
1249 Only add basename to patterns' FC_FILE element, not any part of
1252 2005-10-22 Patrick Lam <plam@mit.edu>
1255 Add some more consts, fixing more GCC4 warnings.
1257 2005-10-22 Zhe Su <zsu@novell.com>
1260 Support localized font family and style names.
1261 This has been reported to break old apps like xfd, but modern
1262 (gtk+/qt/mozilla) apps work fine.
1264 2005-10-21 Patrick Lam <plam@mit.edu>
1265 * src/fccache.c (FcGlobalCacheLoad):
1267 Destroy the global cache file if it's terminally broken. (reported by
1270 2005-10-21 Patrick Lam <plam@mit.edu>
1271 * fc-list/fc-list.c (main):
1272 * src/fcname.c (FcNameUnparse, FcNameUnparseEscaped):
1273 * fontconfig/fontconfig.h:
1275 Prevent fc-list from escaping strings when printing them (reported by
1278 2005-10-20 Marcus Meissner <meissner@suse.de>
1281 * fontconfig/fontconfig.h:
1283 Add valist sentinel markup for FcObjectSetBuild and FcPatternBuild.
1285 2005-10-14 Ross Burton <ross@burtonini.com>
1288 * fc-glyphname/fc-glyphname.c:
1291 Add consts to variables so as to move arrays into .rodata.
1293 2005-10-14 Mike Fabian <mfabian@suse.de>
1296 * src/fccache.c (FcDirCacheUnlink):
1298 Check existence of directory cache file before attempting to unlink.
1300 2005-10-13 Patrick Lam <plam@mit.edu>
1301 * src/fccache.c (FcDirCacheUnlink):
1303 Fix flipped return value on unlink. (Reported by Mike Fabian)
1305 2005-10-12 Patrick Lam <plam@mit.edu>
1308 * src/fcdir.c (FcDirScanConfig):
1311 When fc-cache is run without --force, use directory cache files
1312 to speed up fc-cache run time. (Reported by Mike Fabian)
1314 2005-10-06 Patrick Lam <plam@mit.edu>
1316 * src/fcname.c (FcObjectToPtr):
1317 * src/fcpat.c (FcStrStaticName):
1319 Add padding to make valgrind and glibc not hate each other
1320 when calling strlen().
1322 2005-10-05 Simos Xenitellis <simos74@gmx.net>
1323 reviewed by: plam & keithp
1327 Modify config file to use Greek fonts before Asian fonts with
1330 2005-10-05 Christian Biesinger <cbiesinger@web.de>
1331 reviewed by: plam & keithp
1335 Use libtool -no-undefined flag on all platforms.
1337 2005-10-05 Patrick Lam <plam@mit.edu>
1338 * src/fccache.c (FcCacheHaveBank):
1340 Implement move-to-front array for banks (perf regression
1341 reported by Ronny V. Vindenes).
1343 2005-10-04 Patrick Lam <plam@mit.edu>
1344 * src/fccache.c (FcDirCacheValid, FcDirCacheUnlink,
1345 FcDirCacheHasCurrentArch):
1346 * fc-cache/fc-cache.c (scanDirs):
1347 * fontconfig/fontconfig.h:
1349 Add new API which unlinks directory caches and checks dir caches
1350 for existence of appropriate sections. Fix fc-cache to unlink
1351 stale cache files and save directory caches that lack relevant
1354 2005-10-03 Patrick Lam <plam@mit.edu>
1355 * src/fccache.c (FcDirCacheValid):
1357 Ensure that a directory cache has the appropriate section
1358 before reporting that it is valid (reported by Matthias Clasen).
1360 2005-09-29 Mathias Hasselmann <mathias.hasselmann@gmx.de>
1368 Use libxml2 if requested (with --enable-libxml2) or if
1369 expat is not available.
1371 2005-09-29 Patrick Lam <plam@mit.edu>
1372 * src/fccache.c (FcGlobalCacheSave, FcDirCacheWrite):
1374 Fix multi-arch cache files: compute the position for the
1375 block to be added using info from OrigFile, not NewFile.
1377 2005-09-28 Patrick Lam <plam@mit.edu>
1378 * src/fccache.c (FcCacheMachineSignature):
1380 Cast results of sizeof() to unsigned int to get rid of
1381 warnings on x86_64 (thanks Matthias Clasen).
1383 2005-09-27 Patrick Lam <plam@mit.edu>
1384 * src/fccache.c (FcGlobalCacheSave, FcCacheCopyOld,
1387 Use FcAtomic to rewrite cache files.
1389 2005-09-27 Patrick Lam <plam@mit.edu>
1391 * src/fccache.c (FcDirCacheWrite):
1393 Don't unlink the fonts.cache-2 file even if there's no data
1394 to write; just write an empty cache file. (thanks Lubos Lunak)
1396 2005-09-27 Patrick Lam <plam@mit.edu>
1398 * src/fccache.c (FcDirCacheWrite):
1400 Allocate room for the subdirectory names in each
1401 directory cache. Thanks to James Cloos for finding
1402 and diagnosing this bug!
1404 2005-09-22 Patrick Lam <plam@mit.edu>
1406 * fc-cache/fc-cache.sgml:
1407 * src/fccache.c (FcDirCacheWrite):
1408 * src/fccache.h (struct FcCache):
1410 Update documentation -- fc-cache's man page now says that you
1411 need to run fc-cache once per cached architecture; add some
1412 documentation to the FcCache structure.
1414 Make fc-cache write out fonts.cache-2 files for directories with
1415 no fonts (i.e. only subdirectories).
1417 2005-09-22 Patrick Lam <plam@mit.edu>
1419 * fc-cache/fc-cache.sgml:
1420 * fc-case/fc-case.c:
1421 * fc-glyphname/fc-glyphname.c:
1427 More GCC 4 cleanups, due to Behhad Esfahbod <behdad@beddad.org>.
1431 * fc-lang/fc-lang.c:
1432 * fontconfig/fcprivate.h:
1433 * fontconfig/fontconfig.h:
1447 Implement new mmaped cache for font information.
1448 Bump so revision to 2.3.90.
1450 2005-07-25 Keith Packard <keithp@keithp.com>
1452 * doc/fontconfig-user.sgml:
1453 * fc-glyphname/fc-glyphname.c: (scan), (main):
1454 * fc-lang/fc-lang.c: (FcConfigHome):
1455 * fc-match/fc-match.c: (main):
1456 * src/fccfg.c: (FcConfigHome):
1457 * src/fcfreetype.c: (FcSfntNameTranscode), (FcSfntNameLanguage),
1458 (FcVendorMatch), (FcFreeTypeQuery), (FcFreeTypeCharSetAndSpacing),
1459 (addtag), (FcFontCapabilities):
1460 * src/fcpat.c: (FcValueListEntCreate):
1461 * src/fcstr.c: (FcStrCaseWalkerInit):
1462 * src/fcxml.c: (FcParsePatelt), (FcConfigParseAndLoadDir):
1464 Various GCC 4 cleanups for signed vs unsigned char
1466 Match only [0-9]*.conf files in <include>{directory}</include>
1467 elements to avoid loading *.rpmsave or .dpkg-old files. (otaylor)
1469 2005-07-15 Carl Worth <cworth@cworth.org>
1472 * src/fcinit.c: (FcFini):
1473 * src/fcpat.c: (FcPatternFini): Rename FcPatternThawAll to
1476 * src/fcpat.c: (FcObjectStaticName), (FcObjectStaticNameFini):
1477 Pull the FcObjectStateName hash table out to file scope, and add
1478 FcObjectStaticNameFini so that FcFini will cleanup this hash table
1481 * src/fcxml.c: (FcConfigParseAndLoad): Clear FILE* to NULL after
1484 2005-06-16 Patrick Lam <plam@MIT.EDU>
1488 * src/fccfg.c: (FcConfigCompareValue):
1489 Make FcOpNotContains use FcStrStr for strings so that
1490 it matches semantics for !FcOpContains.
1492 2005-05-20 Keith Packard <keithp@keithp.com>
1496 Move fontconfig source package to libs as per override
1498 2005-05-20 Aiet Kolkhi <aietkolkhi@gmail.com>
1500 reviewed by: Mike Fabian
1503 The ka.orth file requires several characters which are not
1504 used anymore in modern Georgian and which are missing in the free
1505 Georgian TrueType fonts downloadable at:
1507 http://aiet.qartuli.net/docs/georgian_on_linux_en.php
1509 2005-04-27 Keith Packard <keithp@keithp.com>
1513 Update date to real 2.3.2 release date.
1514 Fix change attributions
1516 2005-04-27 Keith Packard <keithp@keithp.com>
1519 Bump so revision for 2.3.2
1520 * fc-cache/fc-cache.c: (scanDirs):
1521 Fix a few minor leaks in error cases.
1523 2005-04-23 Keith Packard <keithp@keithp.com>
1528 * fontconfig/fontconfig.h:
1529 Update for version 2.3.2
1531 2005-04-21 Keith Packard <keithp@keithp.com>
1533 * debian/fontconfig.postinst:
1534 Don't force bitmap font enable in default
1535 configuration; allows users to override this in
1545 * debian/po/pt_BR.po:
1546 * debian/po/templates.pot:
1548 * debian/po/zh_CN.po:
1549 Updated translations
1551 * fc-cache/fc-cache.c: (main):
1552 Destroy font configuration on exit to help valgrind
1555 * src/fcfreetype.c: (FcSfntNameTranscode), (FcFreeTypeCharIndex),
1556 (FcFreeTypeCheckGlyph):
1557 Use own transcoding routines in preference to iconv
1558 which appears to have leaks in some translators.
1559 Call iconv_close after using iconv (oops).
1561 Prefer unicode encoding of Euro char as some
1562 fonts mis-encode Euro in other ones.
1564 Must fetch bitmap glyphs to get width values
1565 to check for monospace/dual-width fonts.
1567 2005-04-13 Ross Burton <ross@burtonini.com>
1570 Check that a pattern isn't already frozen in FcPatternFreeze.
1572 2005-03-31 Ross Burton <ross@burtonini.com>
1577 Run all FcPattern objects through FcObjectStaticName, so that
1578 compares can be done on pointers instead of strings (#2659)
1580 2005-03-17 Tor Lillqvist <tml@novell.com>
1582 * src/fontconfig.def.in: Add the .dll to the dll name.
1584 2005-03-10 Keith Packard <keithp@keithp.com>
1586 * debian/README.Debian:
1587 Update to reflect configuration changes
1589 * debian/fontconfig.postinst:
1590 Fix Autohint vs Autohinter mistake
1591 * debian/fontconfig.templates:
1592 Adopt changes from Josselin Mouette for configuration descriptions
1593 Update debian to version 2.3.1-2
1595 2005-03-08 Keith Packard <keithp@keithp.com>
1599 Update debian for 2.3.1
1601 2005-03-09 Tor Lillqvist <tml@novell.com>
1603 * fontconfig-zip.in: Get the DLL from "bin" where modern libtools
1606 * src/fccfg.c (FcConfigFileExists): Check also drive letter
1609 2005-03-08 Keith Packard <keithp@keithp.com>
1613 * fontconfig/fontconfig.h:
1616 2005-03-05 Keith Packard <keithp@keithp.com>
1618 * src/fcfreetype.c: (addtag), (FcFontCapabilities):
1619 Include space and remove numbers from valid script tags.
1620 This ensures that tags like 'lao ' work while rejecting
1621 those which have any digits.
1622 Eliminate a spurious debugging variable (len)
1624 2005-03-05 Keith Packard <keithp@keithp.com>
1626 * src/fcfreetype.c: (addtag), (GetScriptTags),
1627 (FcFontCapabilities):
1628 Rework GSUB/GPOS script parsing to survive broken fonts.
1629 Thanks for the broken font go to Manish Singh
1631 2005-03-05 Keith Packard <keithp@keithp.com>
1636 * debian/fontconfig.config:
1637 * debian/fontconfig.templates:
1639 Include 2.3 release information in changelog
1640 Add Josselin Mouette as an Uploader
1641 Set hinting_type to low priority configuration option
1644 * debian/fontconfig.postinst:
1645 yes_bitmaps.conf -> yes-bitmaps.conf
1651 2005-03-02 Keith Packard <keithp@keithp.com>
1654 * conf.d/Makefile.am:
1655 * conf.d/autohint.conf:
1656 * conf.d/no-sub-pixel.conf:
1657 * conf.d/sub-pixel.conf:
1658 * conf.d/unhinted.conf:
1659 * debian/autohint.conf:
1660 * debian/fontconfig.install:
1661 * debian/fontconfig.postinst:
1662 * debian/fontconfig.templates:
1663 * debian/no-sub-pixel.conf:
1664 * debian/unhinted.conf:
1665 Move debian-specific conf file examples upstream.
1667 Sub-pixel configuration examples must smash subpixel value
1668 as Xft always sets it from X.
1670 Change sub-pixel rendering debconf descriptions from
1671 Enable/Disable to Always/Never.
1673 2005-03-02 Keith Packard <keithp@keithp.com>
1676 * conf.d/.cvsignore:
1678 Ignore more build detritus
1681 Add debian package construction stuff.
1683 * config/config.guess:
1684 * config/config.sub:
1685 Update to newer versions of these tools
1688 Get library manuals to build again (we love automake).
1690 * debian/README.Debian:
1691 * debian/autohint.conf:
1696 * debian/fontconfig-udeb.install:
1697 * debian/fontconfig.config:
1698 * debian/fontconfig.defoma:
1699 * debian/fontconfig.dirs:
1700 * debian/fontconfig.install:
1701 * debian/fontconfig.postinst:
1702 * debian/fontconfig.postrm:
1703 * debian/fontconfig.templates:
1704 * debian/libfontconfig1-dev.install:
1705 * debian/libfontconfig1.install:
1706 * debian/local.conf.md5sum:
1707 * debian/no-sub-pixel.conf:
1708 * debian/po/POTFILES.in:
1717 * debian/po/pt_BR.po:
1718 * debian/po/templates.pot:
1720 * debian/po/zh_CN.po:
1722 * debian/unhinted.conf:
1723 Update debian build system to switch maintainers and
1724 deal with 2.3 functionality
1726 2005-03-01 Keith Packard <keithp@keithp.com>
1730 * fontconfig/fontconfig.h:
1733 2005-03-01 Keith Packard <keithp@keithp.com>
1736 Generate and install PDF versions of the manuals
1738 * doc/fcpattern.fncs:
1741 * doc/fcstring.fncs:
1742 Add missing exported functions, fix data types
1744 * doc/fontconfig-devel.sgml:
1745 Add missing pattern elements.
1747 * doc/fontconfig-user.sgml:
1748 Add missing pattern elements. Document conf.d usage,
1749 clarify available orthography list. Fix some config file
1750 attributes. Complete list of constants.
1752 * fontconfig/fontconfig.h:
1753 Mark FC_SOURCE deprecated.
1755 * src/fcfreetype.c: (FcFreeTypeQuery):
1756 Don't set FC_SOURCE any longer.
1758 2005-02-28 Keith Packard <keithp@keithp.com>
1761 * conf.d/Makefile.am:
1763 * conf.d/no-bitmaps.conf:
1764 * conf.d/sub-pixel.conf:
1765 * conf.d/yes-bitmaps.conf:
1767 Create prototype /etc/fonts/conf.d directory with a few
1768 sample configuration files.
1769 Deprecate use of local.conf for local customizations in favor of
1770 this directory based scheme which is more easily integrated into
1771 installation systems.
1774 Tag FC_EMBOLDEN as a boolean variable
1776 2005-02-10 Keith Packard <keithp@keithp.com>
1778 reviewed by: pborelli@katamail.com
1780 * src/fcdir.c: (FcFileScanConfig):
1781 Free patterns from fonts which are rejected by configuration
1784 2005-01-28 Keith Packard <keithp@keithp.com>
1788 * fontconfig/fontconfig.h:
1789 Update for version 2.2.99
1791 2005-01-28 Keith Packard <keithp@keithp.com>
1794 Add a few pointers (#2284, #2285)
1796 2005-01-28 Keith Packard <keithp@keithp.com>
1799 * src/fcname.c: (FcNameBool):
1800 * src/fcxml.c: (FcTypeName), (FcTypecheckValue), (FcTypecheckExpr),
1801 (FcTestCreate), (FcEditCreate), (FcConfigLexBool), (FcParseBool),
1802 (FcParseAlias), (FcParseInclude), (FcParseTest), (FcParseEdit):
1803 Polite typechecking for test and edit expressions. Helps
1804 catch errors in the font configuration. (bug 229)
1806 2005-01-15 Alan Coopersmith <alan.coopersmith@sun.com>
1808 reviewed by: Keith Packard <keithp@keithp.com>
1811 Have --with-expat set EXPAT_CFLAGS (bug 2278)
1813 2005-01-13 Keith Packard <keithp@keithp.com>
1815 * doc/fontconfig-user.sgml:
1816 Add SEE ALSO section (bug 2085)
1818 2005-01-13 J. Ali Harlow <ali@juiblex.co.uk>
1820 reviewed by: Keith Packard <keithp@keithp.com>
1825 * fc-case/Makefile.am:
1826 * fc-glyphname/Makefile.am:
1827 * fc-lang/Makefile.am:
1828 * src/fontconfig.def.in:
1829 Cross compiling fixes (bug 280)
1831 2005-01-13 Keith Packard <keithp@keithp.com>
1834 Update blanks list (Closes bug 86)
1836 2005-01-04 Keith Packard <keithp@keithp.com>
1838 * src/fccache.c: (FcCacheFontSetAdd):
1839 Verify that every font pattern loaded from cache has
1840 both FC_FILE and FC_FAMILY entries.
1841 Attempt to fix bug #2219.
1843 2004-12-29 Keith Packard <keithp@keithp.com>
1847 * fontconfig/fontconfig.h:
1848 Update for version 2.2.98
1850 2004-12-29 Keith Packard <keithp@keithp.com>
1852 * fontconfig/fontconfig.h:
1853 Document ASCII limitations of Fc character conversion macros
1854 * src/fcstr.c: (FcStrCaseWalkerLong), (FcStrDowncase):
1855 Fix off-by-one error in utf-8 case walking code.
1856 Add FcStrDowncase (useful for testing case conversion functions)
1858 2004-12-29 Keith Packard <keithp@keithp.com>
1861 * fc-case/.cvsignore:
1862 clean up CVS ignore lists
1863 * fc-lang/iso-3166.txt:
1864 Add territory database
1866 2004-12-29 Tor Andersson <tor.andersson@gmail.com>
1868 Reviewed by: Keith Packard
1871 Remove Han characters from Korean orthography
1873 2004-12-29 Keith Packard <keithp@keithp.com>
1876 Reorder utility programs to make sure fc-case is run before fc-lang
1877 as fc-lang uses fcstr.c which uses fccase.h
1881 2004-12-29 Keith Packard <keithp@keithp.com>
1884 Adopt some RedHat suggestions for standard font configuration.
1888 * fc-case/CaseFolding.txt:
1889 * fc-case/Makefile.am:
1890 * fc-case/fc-case.c: (panic), (addFold), (ucs4_to_utf8),
1891 (utf8_size), (addChar), (foldExtends), (case_fold_method_name),
1892 (dump), (parseRaw), (caseFoldReadRaw), (main):
1893 * fc-case/fccase.tmpl.h:
1894 Add new helper program 'fc-case' to construct case folding
1895 tables from standard Unicode CaseFolding.txt file
1898 * src/fclist.c: (FcListValueHash):
1899 * src/fcstr.c: (FcStrCaseWalkerInit), (FcStrCaseWalkerLong),
1900 (FcStrCaseWalkerNext), (FcStrCaseWalkerNextIgnoreBlanks),
1901 (FcStrCmpIgnoreCase), (FcStrCmpIgnoreBlanksAndCase),
1902 (FcStrHashIgnoreCase), (FcStrIsAtIgnoreBlanksAndCase),
1903 (FcStrIsAtIgnoreCase), (FcStrStrIgnoreCase):
1904 Re-implement case insensitive functions with Unicode
1905 aware versions (including full case folding mappings)
1907 2004-12-13 Keith Packard <keithp@keithp.com>
1909 reviewed by: Owen Taylor <otaylor@redhat.com>
1911 * src/fcmatch.c: (FcFontSetSort):
1912 I changed FcFontSetSort to respect the generic aliases better
1913 in the face of language matching.
1915 What I did was to ammend the strict sort order used by FcFontSort so
1916 that it 'satisfies' the language specified in the pattern by locating
1917 the best matching font supporting each pattern language and then
1918 ignores language in the remaining fonts for purposes of matching.
1920 So, when asking for 'sans:lang=en', you'll get an English font first,
1921 and then the remaining fonts sorted with respect to the 'sans' alias
1922 alone -- pushing Kochi fonts ahead of other English-supporting Han fonts.
1924 2004-12-10 Jakub Pavelek <jakub.pavelek@nokia.com>
1926 reviewed by: Keith Packard <keithp@keithp.com>
1928 * fontconfig/fontconfig.h:
1931 Configuration changes to request synthetic emboldening of
1932 fonts. The actual emboldening code will live in Xft.
1934 2004-12-09 John Thacker <thacker@math.cornell.edu>
1936 reviewed by: Keith Packard <keithp@keithp.com>
1940 Currently Russian (ru) requires 0406 and 0456 (І and і), but these
1941 were eliminated in Russian in 1918 in favor of 0418 and 0438 (И and
1942 и), and don't even appear in KOI8-R. (The hypothesis that they
1943 don't appear in KOI8-R due to their similarity with Latin I and i is
1944 eliminated by their presence in KOI8-U.) I have a couple of fonts
1945 with Russian support that don't have the letter.
1947 Therefore, 0406 and 0456 should be removed from or commented out of
1950 2004-12-06 michael meeks <mmeeks@novell.com>
1952 Reviewed by: Keith Packard <keithp@keithp.com>
1954 * src/fcinit.c: (FcMemReport):
1956 * src/fclist.c: (FcObjectSetAdd):
1957 * src/fcpat.c: (FcValueListEntCreate), (FcPatternBaseFreeze),
1958 (FcPatternInsertElt), (FcPatternEqual), (FcObjectStaticName):
1959 * src/fcxml.c: (FcParsePatelt):
1960 memoize strings and share a single copy for all uses. Note that
1961 this could be improved further by using statically allocated blocks
1962 and gluing multiple strings together, but I'm basically lazy.
1963 In my environment with 800 font files, I get a savings of about 90KB.
1965 2004-12-06 Keith Packard <keithp@keithp.com>
1969 * config/Makedefs.in:
1972 * doc/fcatomic.fncs:
1973 * doc/fcblanks.fncs:
1974 * doc/fccharset.fncs:
1975 * doc/fcconfig.fncs:
1976 * doc/fcconstant.fncs:
1978 * doc/fcfontset.fncs:
1979 * doc/fcfreetype.fncs:
1981 * doc/fcmatrix.fncs:
1982 * doc/fcobjectset.fncs:
1983 * doc/fcobjecttype.fncs:
1984 * doc/fcpattern.fncs:
1985 * doc/fcstring.fncs:
1986 * doc/fcstrset.fncs:
1988 * doc/fontconfig-devel.sgml:
1989 * doc/fontconfig-user.sgml:
1991 * doc/version.sgml.in:
1992 * fc-cache/Makefile.am:
1993 * fc-cache/fc-cache.c:
1994 * fc-glyphname/Makefile.am:
1995 * fc-glyphname/fc-glyphname.c:
1996 * fc-glyphname/fcglyphname.tmpl.h:
1997 * fc-lang/Makefile.am:
2007 * fc-lang/az_ir.orth:
2041 * fc-lang/fc-lang.c:
2042 * fc-lang/fc-lang.man:
2043 * fc-lang/fclang.tmpl.h:
2088 * fc-lang/ku_ir.orth:
2121 * fc-lang/ps_af.orth:
2122 * fc-lang/ps_pk.orth:
2151 * fc-lang/ti_er.orth:
2152 * fc-lang/ti_et.orth:
2178 * fc-lang/zh_cn.orth:
2179 * fc-lang/zh_hk.orth:
2180 * fc-lang/zh_mo.orth:
2181 * fc-lang/zh_sg.orth:
2182 * fc-lang/zh_tw.orth:
2184 * fc-list/Makefile.am:
2185 * fc-list/fc-list.c:
2186 * fc-match/Makefile.am:
2187 * fc-match/fc-match.1:
2188 * fc-match/fc-match.c:
2189 * fontconfig/fcfreetype.h:
2190 * fontconfig/fcprivate.h:
2191 * fontconfig/fontconfig.h:
2212 Change files from ISO-Latin-1 to UTF-8
2214 2004-12-04 Keith Packard <keithp@keithp.com>
2217 Update links to new freedesktop.org locations
2219 Add uninstall-local to get rid of fonts.conf and local.conf if they
2220 match the distributed versions. Fixes 'make distcheck'
2222 2004-12-04 Keith Packard <keithp@keithp.com>
2226 * fontconfig/fontconfig.h:
2227 Updates for version 2.2.97
2229 2004-12-04 Owen Taylor <otaylor@redhat.com>
2231 reviewed by: Keith Packard <keithp@keithp.com>
2233 * fc-cache/fc-cache.c: (main):
2234 Sleep for two seconds before exiting to make sure timestamps
2235 for future changes have distinct mod times in the file system.
2238 Add Punjabi orthography. Bug #1671.
2240 2004-12-04 Keith Packard <keithp@keithp.com>
2243 Just remove the FC_FONTDATE -- it has locale issues and
2244 annoys redhat multi-arch installs. Now that all X fonts are
2245 included without prejudice, the chances of the date being at
2246 all interesting are rather limited. Bug #505.
2248 Add copyright and license
2250 2004-12-04 Keith Packard <keithp@keithp.com>
2253 Change default set of fonts to include all of
2254 /usr/X11R6/lib/X11/fonts (or wherever the X fonts are located).
2255 * doc/fontconfig-user.sgml:
2256 Document new <include>directory-name</include> semantics
2258 add <include ignore_missing="yes">conf.d</include>
2260 Add selectfont to ignore bitmap fonts, add comment for
2261 selectfont which accepts bitmap fonts.
2264 * src/fcxml.c: (FcConfigParseAndLoadDir), (FcConfigParseAndLoad):
2265 Allow <include> configuration elements to reference directories.
2266 Parse and load all files of the form [0-9]* in sorted order.
2268 2004-12-04 Keith Packard <keithp@keithp.com>
2271 Report command line for $srcdir/configure accurately.
2274 2004-12-04 Keith Packard <keithp@keithp.com>
2276 * src/fcfreetype.c: (FcFreeTypeQuery):
2277 Check for non-empty face->family_name and face->style_name
2278 before using those for the font. Empty names match everything.
2281 2004-12-04 Keith Packard <keithp@keithp.com>
2284 * fontconfig/fontconfig.h:
2285 * src/fcfreetype.c: (FcFreeTypeQuery):
2287 Create FC_FONTFORMAT from FT_Get_X11_Font_Format function where
2288 available. This provides font file format information (BDF, Type 1,
2289 PCF, TrueType) for each font. Closes #109.
2291 2004-12-04 Daniel Glassey <danglassey@ntlworld.com>
2293 reviewed by: Keith Packard <keithp@keithp.com>
2295 * doc/fontconfig-user.sgml:
2298 * fontconfig/fontconfig.h:
2299 * src/fcfreetype.c: (FcFreeTypeQuery), (addtag), (compareulong),
2300 (GetScriptTags), (FcFontCapabilities):
2302 Add detection for font capabilities (bug #105)
2304 2004-12-04 Keith Packard <keithp@keithp.com>
2307 Move existing fonts.conf to fonts.conf.bak
2310 Add detection of iconv
2312 * doc/fcpattern.fncs:
2313 * doc/fontconfig-devel.sgml:
2314 * doc/fontconfig-user.sgml:
2316 Document new selectfont elements
2319 Switch to UTF-8 in comment
2321 * fontconfig/fontconfig.h:
2323 Add fullname, and family/style/fullname language entries
2325 * src/fccache.c: (FcCacheFontSetAdd):
2326 * src/fcdir.c: (FcFileScanConfig):
2327 Respect selectfont/*/glob
2330 * src/fccfg.c: (FcConfigCreate), (FcConfigDestroy),
2331 (FcConfigCompareValue), (FcConfigPatternsAdd),
2332 (FcConfigPatternsMatch), (FcConfigAcceptFont):
2333 * src/fcxml.c: (FcElementMap), (FcVStackDestroy),
2334 (FcVStackPushPattern), (FcPopExpr), (FcParseAcceptRejectFont),
2335 (FcPopValue), (FcParsePatelt), (FcParsePattern), (FcEndElement):
2336 Add support for selectfont
2338 * src/fcfreetype.c: (FcSfntNameTranscode), (FcSfntNameLanguage),
2339 (FcStringInPatternElement), (FcFreeTypeQuery):
2340 Add multi-lingual family/style/fullname support
2342 * src/fclist.c: (FcListPatternMatchAny):
2343 Expose FcListPatternMatchAny (which selectfont/*/pattern uses)
2345 * src/fcpat.c: (FcPatternRemove), (FcPatternAppend),
2346 (FcObjectStaticName):
2347 Add new FcPatternRemove/FcPatternAppend.
2348 FcObjectStaticName stores computed pattern element names which
2349 are required to be static.
2351 2004-09-09 "NAKAMURA Ken'ichi" <nakamura@sbp.fp.a.u-tokyo.ac.jp>
2356 Remove spurious / after $(DESTDIR)
2358 2004-06-30 Keith Packard <keithp@keithp.com>
2362 * fontconfig/fontconfig.h:
2365 2004-06-30 Keith Packard <keithp@keithp.com>
2367 Provided by: Lubos Lunak <l.lunak@suse.cz>
2369 * src/fccfg.c: (FcConfigUptoDate):
2370 However FcConfigUptoDate() doesn't seem to work. See the attached
2371 patch. First there's an obvious misplaced parenthesis making it
2372 return always false, and second, even this call fails to detect font
2373 changes (e.g. adding a new font to
2374 /usr/X11R6/lib/X11/fonts/truetype). The patch should fix that as
2375 well. The problem seems to be triggered by my fonts.conf specifying
2376 only /usr/X11R6/lib/X11/fonts , and therefore config->configDirs
2377 doesn't include subdirs, unlike config->fontDirs.
2379 2004-06-03 Keith Packard <keithp@keithp.com>
2381 * fontconfig/fontconfig.h:
2382 Remove comma at end of FcResult enum definition.
2384 2004-05-29 Keith Packard <keithp@keithp.com>
2387 Add steps to md5sum release
2389 2004-05-29 Keith Packard <keithp@keithp.com>
2393 * fontconfig/fontconfig.h:
2396 2004-05-29 Keith Packard <keithp@keithp.com>
2398 * fontconfig/fontconfig.h:
2399 * src/fcmatch.c: (FcFontSetMatch):
2400 Add FcResultOutOfMemory to provide an accurate error when
2401 FcFontSetMatch fails in this way
2404 Make #warning about lacking various FreeType features indicate
2405 which version those features appeared so users know how to
2406 fix the problem (Thanks to Anton Tropashko)
2408 2004-05-05 Keith Packard <keithp@keithp.com>
2410 * src/fcfreetype.c: (FcFreeTypeCharSetAndSpacing):
2411 Replace MIN/MAX/ABS macros which happen to have come
2412 from FreeType with fontconfig-specific ones (FC_*)
2414 2004-04-23 Keith Packard <keithp@keithp.com>
2417 Extend release preparation instructions to include
2418 notification and distribution steps
2420 2004-04-23 Keith Packard <keithp@keithp.com>
2424 * fontconfig/fontconfig.h:
2425 Update to 2.2.94 (2.2.93 shipped with broken libtool bits)
2427 2004-04-23 Keith Packard <keithp@keithp.com>
2430 Ignore a few more autotool files
2432 2004-04-14 Keith Packard <keithp@keithp.com>
2435 Add instructions for doing a release
2437 * fontconfig.spec.in:
2438 clean up .spec file; perhaps this will be useful to somebody...
2442 * fontconfig/fontconfig.h:
2445 * fc-lang/fc-lang.c:
2446 Make 'scanopen' static so GCC doesn't whine about lacking prototype
2448 * fc-glyphname/Makefile.am:
2449 * fc-lang/Makefile.am:
2450 * fc-list/Makefile.am:
2451 * fc-match/Makefile.am:
2453 Add WARN_CFLAGS to pass -W flags for GCC systems
2455 * src/fcfreetype.c: (FcNoticeFoundry), (FcVendorMatch),
2456 (FcVendorFoundry), (FcGetPixelSize), (FcFreeTypeQuery):
2457 Change various char types around to match across
2459 Fixed bug in using available_sizes[i].height which
2460 is in pixels, not 64ths of a pixel.
2462 2004-03-06 Keith Packard <keithp@keithp.com>
2464 * src/fcfreetype.c: (FcFreeTypeQuery):
2465 Force FC_FOUNDRY and FC_WIDTH to always be set so that
2466 matches looking for explicit values prefer exact matches
2468 2004-03-02 Keith Packard <keithp@keithp.com>
2470 Supplied by: mfabian@suse.de (Mike FABIAN)
2472 * src/fcfreetype.c: (FcFreeTypeQuery):
2473 Bug #260 fc-cache generates wrong spacing values for bitmap fonts
2474 Was using (strcmp (a,b)) instead of (!strcmp(a,b)).
2476 2004-02-21 Manish Singh <yosh@gimp.org>
2478 * fc-glyphname/fc-glyphname.c: (main):
2479 Cast strlen to int for printf, so we're 64-bit clean.
2481 2004-02-11 Keith Packard <keithp@keithp.com>
2484 * src/fcfreetype.c: (FcGetPixelSize):
2485 Ok, so I messed up the test for y_ppem. Let's see if I
2486 got it right this time.
2488 2004-02-10 Keith Packard <keithp@keithp.com>
2491 * src/fcfreetype.c: (FcGetPixelSize):
2492 Pre-2.1.5 versions of FreeType didn't include y_ppem in the
2493 FT_Bitmap_Size record. Add a configure.in test for this
2494 and change the code accordingly (using height instead).
2496 2004-02-06 Keith Packard <keithp@keithp.com>
2499 Add Low Saxon orthography
2500 (Kenneth Rohde Christiansen <kenneth@gnu.org>)
2502 * src/fccfg.c: (FcConfigNewestFile):
2503 Oops. Left 'newest.set' unset, which would miscompute
2506 * src/fcfreetype.c: (FcGetPixelSize), (FcFreeTypeQuery),
2507 (FcFreeTypeCheckGlyph):
2508 Add FcGetPixelSize to extract correct pixel size from bdf/pcf
2509 font properties (which report the wrong value in current FreeType)
2511 Don't attempt to check for empty glyphs in non-scalable fonts; they
2514 2004-02-01 Tor Lillqvist <tml@iki.fi>
2516 * src/fccfg.c (FcConfigCreate): fontconfig, at least as used by
2517 GIMP and/or PangoFT2 on Windows, crashes when trying to save the
2518 cache if config->cache is NULL, which happens if FcConfigHome() is
2519 NULL. Guard against that by using the temp folder in that case.
2521 2004-01-03 Roozbeh Pournader <roozbeh@sharif.edu>
2523 * fc-lang/az_ir.orth:
2524 * fc-lang/ku_ir.orth:
2525 * fc-lang/ps_af.orth:
2526 * fc-lang/ps_pk.orth:
2527 Added orthographies for Iranian Azerbaijani and Kurdish, and Pashto
2528 (Afghan and Pakistani).
2530 Updated Urdu orthography with real data.
2532 2003-12-11 Carl Worth <cworth@east.isi.edu>
2534 * fc-list/Makefile.am (man_MANS): Move man_MANS into the 'if
2537 * fc-cache/Makefile.am (man_MANS): Move man_MANS into the 'if
2539 (all-local): Remove excessive whitespace.
2541 * autogen.sh: Add 'set -e' to abort when any program fails,
2542 (avoids printing of 'now type make' after configure aborts).
2544 2003-11-17 Eric Christopherson <rakko@charter.net>
2546 reviewed by: Keith Packard <keithp@keithp.com>
2549 * fontconfig/fcfreetype.h:
2551 Switch to FreeType 2.1.7 style includes. Bug #150.
2553 2003-11-16 Noah Levitt <nlevitt@columbia.edu>
2555 * fc-list/fc-list.sgml: Add some example usages.
2557 2003-11-10 Roozbeh Pournader <roozbeh@sharif.edu>
2560 Fixed a bug "FcStrtod" in handling some cases with two-byte decimal
2563 2003-10-27 Keith Packard <keith@keithp.com>
2566 * fontconfig/fontconfig.h:
2567 Update to version 2.2.92
2569 2003-10-27 Keith Packard <keithp@keithp.com>
2574 * fc-cache/Makefile.am:
2575 * fc-glyphname/Makefile.am:
2576 * fc-lang/Makefile.am:
2577 * fc-list/Makefile.am:
2578 * fc-match/Makefile.am:
2581 Yet more cleanups to finish getting 'make distcheck' working
2582 This has been tested to ensure that it even works from a _build
2585 2003-10-26 Keith Packard <keithp@keithp.com>
2589 * fc-cache/Makefile.am:
2590 * fc-glyphname/Makefile.am:
2591 * fc-lang/Makefile.am:
2592 * fc-lang/fc-lang.c: (scanopen), (scan), (main):
2593 * fc-list/Makefile.am:
2594 * fc-match/Makefile.am:
2595 Attempts to fix 'make distcheck' work. Things are
2596 progressing pretty well, but there are still failures
2597 long into the process dealing with docs (as always).
2599 The big changes here are mostly to make $(srcdir) != "."
2600 work correctly, fixing the docbook related sections and
2601 fc-lang were particularily tricky. Docbook refuses to load
2602 system entities from anywhere other than where the original .sgml
2603 file was located, so no luck looking in "." for the
2604 configure-generated version.sgml and confdir.sgml files.
2606 fc-lang needed help finding .orth files; added a -d option
2607 to set the directory as the least evil of many options.
2609 Now to go use a faster machine and try and wring out the last
2612 2003-10-26 Keith Packard <keithp@keithp.com>
2616 2003-10-26 Keith Packard <keithp@keithp.com>
2619 Include confdir.sgml.in in EXTRA_DIST
2621 2003-10-09 Josselin Mouette <joss@debian.org>
2623 * fc-cache/fc-cache.sgml fc-cache/Makefile.am:
2624 * fc-list/fc-list.sgml fc-list/Makefile.am:
2625 Replace fc-cache and fc-list manpages with more detailed, SGML
2628 2003-09-23 Owen Taylor <otaylor@redhat.com>
2630 * fontconfig/fontconfig.h src/fcdefault.c (FcDefaultSubstitute)
2631 src/fcname.c: Add a FC_HINT_STYLE key for patterns, with
2632 possible values HINT_NONE/HINT_SLIGHT/HINT_MEDIUM/HINT_FULL.
2635 2003-09-23 Owen Taylor <otaylor@redhat.com>
2637 * fc-lang/ka.orth: Remove Georgian capitals, they
2638 aren't used for normal writing. (Bug #116)
2640 2003-09-06 Noah Levitt <nlevitt@columbia.edu>
2642 * doc/fontconfig-devel.sgml:
2643 * doc/fontconfig-user.sgml:
2644 * fontconfig/fontconfig.h:
2646 * src/fcfreetype.c (FcFreeTypeCharSetAndSpacing): Add new spacing
2647 value FC_DUAL (dual-width, as some CJK fonts). (bug #111)
2649 * src/fcfreetype.c (FcFreeTypeCharSetAndSpacing): When checking for
2650 monospace and dual-width fonts, allow roughly a 3% variance in the
2653 2003-08-31 Manish Singh <yosh@gimp.org>
2655 * src/fccfg.c (FcConfigAppFontClear): Support passing NULL to
2658 2003-08-15 Carl Worth <cworth@isi.edu>
2660 * src/fcxml.c (FcEditDestroy): Fix leak of FcEdit.
2661 (FcPopExpr): Add comment about unhandled FcVStackGlob case.
2663 * src/fcpat.c (FcValueListEntDestroy): New function to support
2664 FcFini memory cleanup. Some statistics are not kept in
2666 (FcValueListFreeze): Move hashTable outside this function so it
2667 can be accessed by FcValueListThawAll.
2668 (FcValueListThawAll): New function complements FcValueListFreeze.
2669 (FcPatternBaseFreeze): Move hashTable outside this function so it
2670 can be accessed by FcPatternBaseThawAll.
2671 (FcPatternBaseThawAll): New function complements
2672 FcPatternBaseFreeze.
2673 (FcPatternThawAll): New function complements FcPatternFreeze.
2675 * src/fcinit.c (FcFini): Add new FcFini to cleanup everything.
2677 * src/fccharset.c (FcCharLeafEntCreate): Save pointers to all
2678 allocated FcCharLeafEnt "blocks" so they can be freed later.
2679 (FcCharSetFreezeLeaf): Move hashTable outside this function so it
2680 can be accessed by FcCharSetThawAllLeaf.
2681 (FcCharSetThawAllLeaf): New function complements FcCharSetFreezeLeaf.
2682 (FcCharSetFreezeBase): Move hashTable outside this function so it
2683 can be accessed by FcCharSetThawAll.
2684 (FcCharSetThawAll): New function complements FcCharSetFreeze.
2686 * src/fccfg.c (FcSubstDestroy): Fix leak of outer FcSubst.
2687 (FcConfigDestroy): Fic leak of FcBlanks.
2689 * fc-list/fc-list.c (main): Fix leak of FcObjectSet.
2690 (main): Add call to FcFini when finished.
2692 * fc-glyphname/fc-glyphname.c: Mark several local functions as
2693 static. Add prototypes.
2695 * doc/fcinit.fncs: Add documentation for FcFini function.
2697 * doc/edit-sgml.c: Mark several local functions as static. Add
2700 * doc/Makefile.am (DOC_MODULE): Fix "suspicious" lines.
2702 2003-06-15 Tor Lillqvist <tml@iki.fi>
2704 * test/run-test.sh (FONTCONFIG_FILE): Remove CRs from the out file
2705 before comparing (needed on Windows).
2707 * src/Makefile.am (install-libtool-import-lib): Fix cut&paste error.
2709 2003-06-13 Tor Lillqvist <tml@iki.fi>
2711 * fontconfig-zip.in (DEVZIP): Add share/doc directory. Add Fc*.3
2714 * configure.in: Set FC_DEFAULT_FONTS on Win32 to the
2715 WINDOWSFONTDIR token.
2717 * src/fontconfig.def.in: Move the LIBRARY and VERSION lines to the
2718 end, not to confuse libtool, which expects the EXPORTS line to be
2719 the first. Add FcConfigEnableHome.
2721 * src/fccfg.c: Check also for DLL_EXPORT as indication of being
2722 built as a DLL on Win32.
2724 2003-06-09 Keith Packard <keithp@keithp.com>
2726 * Tag version 2.2.90
2728 2003-06-09 Keith Packard <keithp@keithp.com>
2730 * Optimization in FcLangSetIndex was broken, occasionally
2731 returning a pointer to the wrong location on miss
2733 * Add fc-match to test font matching from the command line.
2735 2003-05-31 Keith Packard <keithp@keithp.com>
2737 * (Bug 85) add support for culmus fonts
2738 * (Bug 87) Automake 1.4 doesn't do man_MAN1 correctly
2739 * (Bug 88) Fix usage info on non-long option systems (Tim Mooney)
2741 2003-05-28 James Su <suzhe@turbolinux.com.cn>
2743 * Fix "contains" op for strings and langsets.
2745 2003-05-17 Keith Packard <keithp@keithp.com>
2747 * Fix build error with BDF prop local. Free langset after query
2749 2003-05-14 Keith Packard <keithp@keithp.com>
2751 * Extract spacing from XLFD atom
2753 2003-05-12 Juliusz Chroboczek <jch@pps.jussieu.fr>
2755 * Reinstate SETWIDTH_NAME parsing for legacy fonts,
2756 disappeared in 1.30.
2758 * Generate FC_SIZE and FC_DPI for legacy bitmap fonts
2760 2003-05-12 Keith Packard <keithp@keithp.com>
2762 * Use FcIsWidth to share code
2764 * Set FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH when scanning fonts to avoid
2765 misclassifying some Han fonts as monospaced.
2767 2003-05-07 Keith Packard <keithp@keithp.com>
2769 * Add filename-based accept/reject to ammend available fonts.
2771 * Change FT_ENCODING_ADOBE_CUSTOM to ft_encoding_adobe_custom for
2772 older FreeType releases.
2774 2003-05-06 Keith Packard <keithp@keithp.com>
2776 * Remove 0b82 and Tamil numbers from tamil
2777 orthography (Jungshik Shin <jshin@mailaps.org>)
2779 2003-05-04 Keith Packard <keithp@keithp.com>
2781 + Map glyph names in fonts with adobe custom encoding to unicode
2783 2003-05-02 Keith Packard <keithp@keithp.com>
2785 * Add FC_WEIGHT_BOOK as weight 75
2787 2003-04-30 Keith Packard <keithp@keithp.com>
2789 * Typo in bitstream foundry name
2791 2003-04-24 Keith Packard <keithp@keithp.com>
2793 * Eliminate italic_angle check for PS fonts
2795 2003-04-23 Noah Levitt <nlevitt@columbia.edu>
2797 * Getting closer to fixing /etc/fonts hard-coding.
2799 2003-04-22 Keith Packard <keithp@keithp.com>
2801 * Update autogen.sh to work with newer automake versions
2802 * Handle pattern elements moving during multiple edits
2804 2003-04-23 James Henstridge <james@daa.com.au>
2806 * doc/fontconfig-devel.sgml: close the <para> element.
2808 * doc/fcpattern.fncs: close the <para> element.
2810 * doc/func.sgml: close the <refsynopsisdiv> element.
2812 2003-04-22 Keith Packard <keithp@keithp.com
2814 * Update autogen.sh to work with newer automake versions
2815 * Handle pattern elements moving during multiple edits
2817 2003-04-17 Colin Walters <walters@debian.org>
2819 + Remove some unused variables, and initialize some other ones so
2820 gcc doesn't warn us.
2822 2003-04-16 Keith Packard <keithp@keithp.com>
2824 + tag version 2.1.94
2826 2003-04-16 Keith Packard <keithp@keithp.com>
2828 + add BDF property fetching support for foundry
2829 (from Juliusz Chroboczek)
2830 + add BDF property fetching support for width
2832 2003-04-11 Juliusz Chroboczek <jch@pps.jussieu.fr>
2834 + Implemented foundry generation for Type 1 and TrueType
2836 2003-04-11 Gerard Escalante <g2@magestudios.net>
2838 + Retrieve information from Type1 FontInfo dictionaries
2840 2003-04-07 Colin Walters <walters@verbum.org>
2842 + src/Makefile.am: Fix dummy makefile target names when
2843 MS_LIB_AVAILABLE isn't set.
2845 2003-03-22 Tor Lillqvist <tml@iki.fi>
2847 Changes for Windows:
2849 + On Windows with gcc (a.k.a. mingw) build as a DLL.
2851 + We don't want to hardcode the fonts.conf file location in the
2852 DLL, so we look up the DLL location at run-time in a DllMain()
2853 function. The fonts.conf location is deduced from that.
2855 + The colon can't be used as path separator on Windows,
2856 semicolon is used instead. File path components can be separated
2857 with either slash or backslash. Absolute paths can also begin
2858 with a drive letter.
2860 + Add internal function FcStrLastSlash that strrchr's the last
2861 slash, or backslash on Windows.
2863 + There is no link() on Windows. For atomicity checks, mkdir a
2864 lock directory instead.
2866 + In addition to HOME, also look for USERPROFILE.
2868 + Recognize the special font directory token WINDOWSFONTDIR, to
2869 use the system's font directory.
2871 + Remove the fontconfig-def.cpp that was obsolete. Add
2872 fontconfig.def(.in), without internal functions.
2874 + Add a fontconfig-zip(.in) script, used to build a binary
2877 Fri Mar 7 07:55:00 EST 2003 Mike A. Harris <mharris@redhat.com>
2878 + RPM specfile cleanups for 2.1.92: Removed man1/* and added man5/*
2879 to main package and man3/* to devel package
2881 + Added missing defattr(-, root, root) to main RPM package
2883 + Added HTML and text development documentation to -devel subpackage
2885 Wed Mar 5 05:08:00 EST 2003 Mike A. Harris <mharris@redhat.com>
2886 + Added back the configure macro options --disable-docs, otherwise
2887 fontconfig installs docs into /usr/share/doc/fontconfig (with no
2888 version number) unconditionally, causing RPM to fail the build due
2889 to _unpackaged_files_terminate_build. We pick up the pregenerated
2890 docs with %doc already.
2892 Wed Mar 5 04:26:20 EST 2003 Mike A. Harris <mharris@redhat.com>
2893 + Removed commented out rpm macro define at top of spec file,
2894 replacing it with a simple explanation, since rpm macros are
2895 expanded by rpm even in comments.
2897 + Changed /usr/bin to _bindir in BuildRequires lines
2899 + Cleaned up rpm postinstall script, and made fc-cache use _bindir
2901 + Reorganized file manifest lists
2903 Sun Mar 2 14:16:17 EST 2003 Owen Taylor <otaylor@redhat.com>
2905 + fontconfig.spec.in: Improvements from Red Hat spec file.
2907 + {fc-lang,fc-cache,fc-list}/Makefile.am: Add man pages.
2909 + docs/*.sgml: SGML fixes.
2911 Sat Mar 1 17:28:53 PST 2003 keithp
2912 + Ok, so the ChangeLog is a bit out of date
2914 + Lots of bugs fixed; most are in bugzilla, the
2915 biggest problems were in cache management where
2916 Owen discovered the library would lose badly when
2917 combining fonts-cache and ~/.fonts-cache data
2919 + Converted from autoconf to automake. This after
2920 getting patches accepted into libtool to allow
2921 the '-version-number' argument which lets
2922 packages set version numbers explicitly rather
2923 than the roundabout libtool way
2925 + Converted documentation to SGML using the docbook
2926 DTD. Now .txt and .html documents are installed
2927 in /usr/share/doc/fontconfig and there's no
2928 man page. Perhaps a man version can be written
2931 Sat Aug 31 15:21:22 PDT 2002 keithp
2932 + Xrender and Xft had several bugs related to
2933 rendering manually placed or poly-face text
2935 + Added more complete memory tracing in fontconfig
2936 Checked with (patched) mozilla and found no leaks
2938 + Updated Latin orthographies by comparing those from
2939 evertype.com with those from eki.ee. Tried to make
2940 sensible choices, including chars that occured in both
2941 and leaving some optional chars out that occured only
2944 Mon Aug 26 16:33:04 PDT 2002 keithp
2945 + Owen discovered that FcLangSetHasLang wasn't actually
2946 checking the language set.
2948 Mon Aug 26 13:37:23 PDT 2002 keithp
2949 + Append a version number to cache filenames
2951 Thu Aug 22 11:36:18 PDT 2002 keithp
2953 + Add "contains" and "not_contains" operators and elements to
2956 + Changed semantics of eq operator for LangSets to check for
2957 FcLangEqual so that any match will do
2959 + FcFontList was using FcConfigCompareValue (...FcOpEqual) instead
2960 of FcValueEqual to check for identical values when inserting into
2961 the results. This broke when the above semantic change was made,
2962 now it uses FcValueEqual which is "more correct" in any case.
2964 Thu Aug 22 00:32:29 PDT 2002 keithp
2966 + Reimplement FC_LANG as new datatype. Lists of strings
2967 was consuming over a megabyte of memory for 401 fonts.
2969 + Freeze patterns loaded from cache files. This shares
2970 common value lists and common patterns which saves
2971 considerable memory.
2973 + Change the denotation of 'constant' charsets to use special
2974 ref value instead of separate boolean.
2976 + Clean up leak tracing stuff, found several unannoted alloc/free
2979 Tue Aug 20 16:17:37 PDT 2002 keithp
2981 + Fix memory leak when parsing matrices from XML
2983 Mon Aug 19 11:57:27 PDT 2002 keithp
2985 + Fix autoconf files to pass FONTCONFIG_PATH on
2986 compile line so that ${prefix} gets substituted
2989 + Use getc_unlocked/putc_unlocked on systems that
2990 provide them to avoid damage done to stdio by posix
2992 + Eliminate FC_PATTERN and FcTypePattern in favor of
2993 an extended api for FcConfigSubstitute which takes
2994 both the font and the pattern.
2996 + Add 'sans serif' alias for 'sans-serif' as some apps
2997 can't handle hyphens in family names
2999 + Eliminate pretense of support for libxml2
3001 + Comment origins of Han orthographies
3003 Tue Jul 30 18:37:09 PDT 2002 keithp
3005 + Add binding property to edit element so that strong
3006 binding values may be inserted by the config file.
3007 The default remains weak.
3009 Sun 28 Jul 04:16:55 PDT 2002 keithp
3011 + Tagged release candidate 1 in the CVS tree and
3012 placed fcpackage.rc1.tar.gz for distribution
3014 Thu Aug 1 08:55:08 PDT 2002 keithp
3016 + Fixed autoconf builds to always specify install
3017 target files (for BSD). Also fixed to
3018 define FONTCONFIG_PATH in config.h so that
3019 nonstandard installs will actually work.