]> git.wh0rd.org Git - fontconfig.git/blob - ChangeLog
2006-05-31 Yong Li (rigel863@gmail.com) reviewed by: plam, Bedhad Esfahbod
[fontconfig.git] / ChangeLog
1 2006-05-31  Yong Li  (rigel863@gmail.com)
2         reviewed by: plam, Bedhad Esfahbod
3
4         * src/ftglue.c (_hb_ftglue_face_goto_table): 
5
6         TrueType Collection table offsets are absolute, not relative.
7
8 2006-04-27  Paolo Borelli  (pborelli@katamail.com)
9         reviewed by: plam
10         
11         * src/fcstr.c (FcStrCopy):
12
13         Make FcStrCopy slightly more efficient.
14
15 2006-04-27  Patrick Lam  <plam@mit.edu>
16             Keith Packard  <keithp@keithp.com>
17         * src/fcstr.c (FcStrBufChar):
18
19         Reduce transient memory usage during config file parsing
20         by allocating smaller buffers (64 seems to be a magic number).
21         
22 2006-04-27  Keith Packard  <keithp@keithp.com>
23
24         * src/fcinit.c: (FcMemReport):
25         * src/fcint.h:
26         * src/fcpat.c: (FcPatternFini):
27         * src/fcxml.c: (FcParsePatelt):
28         Eliminate pattern freezing
29
30 2006-04-27  Keith Packard  <keithp@keithp.com>
31         reviewed by: Patrick Lam <plam@mit.edu>
32
33         * src/fccache.c: (FcDirCacheUnlink), (FcDirCacheHashName),
34         (FcDirCacheOpen), (FcDirCacheWrite):
35         * src/fcfreetype.c: (FcFreeTypeQuery):
36         * src/fcint.h:
37         * src/fclist.c: (FcListAppend):
38         * src/fcmatch.c: (FcFontRenderPrepare):
39         * src/fcpat.c: (FcPatternDestroy), (FcPatternBaseFreeze),
40         (FcPatternFreeze), (FcPatternGet), (FcPatternDuplicate),
41         (FcStrUnserialize):
42         Make path names in cache files absolute (NB, cache format change)
43         Stop permitting cache files to be stored in font dirs.
44         Bump cache magic.
45         Don't include /fonts.cache-2 in cache hash construction.
46
47 2006-04-25  Patrick Lam  <plam@mit.edu>
48         * ChangeLog:
49         * README:
50         * configure.in:
51         * fontconfig/fontconfig.h:
52
53         Bump version to 2.3.95.
54
55 2006-04-25  Behdad Esfahbod  <behdad@cs.toronto.edu>
56         reviewed by: plam
57
58         * configure.in:
59         * src/Makefile.am:
60         * src/fcfreetype.c:
61
62         Fix the issues with GNU libiconv vs. libc iconv (which especially
63         appear on Solarii).  Approach suggested by Tim Mooney.
64         
65 2006-04-24  Dominic Lachowicz  <cinamod@hotmail.com>
66         reviewed by: plam
67         
68         * src/Makefile.am:
69
70         Include $(top_srcdir), $(top_srcdir)/src before anything else.
71
72         * fc-cache/fc-cache.c, fc-cat/fc-cat.c, fc-match/fc-match.c:
73         * src/fccache.c, src/fccfg.c, src/fccharset.c, src/fcdbg.c:
74         * src/fcfreetype.c, src/fcfs.c, src/fcinit.c, src/fclist.c:
75         * src/fcmatch.c, src/fcmatrix.c, src/fcname.c, src/fcpat.c:
76         * src/fcstr.c, src/fcxml.c:
77
78         Shuffle order of includes for building out of srcdir on win32.
79         
80 2006-04-20  Patrick Lam  <plam@mit.edu>
81         * src/fcmatch.c (FcSortWalk):
82
83         Prevent terrible perf regression by getting the if-condition
84         right (reported by Wouter Bolsterlee).
85
86 2006-04-19  Patrick Lam  <plam@mit.edu>
87             Dominic Lachowicz  <cinamod@hotmail.com>
88
89         * src/fccache.c (FcDirCacheConsume):
90
91         Implement mmap-like code for Windows using MapViewOfFile.
92         
93 2006-04-19  Patrick Lam  <plam@mit.edu>
94         * src/fccache.c (FcDirCacheConsume, FcCacheNextOffset):
95
96         Bail gracefully if the cache file does not contain enough data.
97
98 2006-04-14  Patrick Lam  <plam@mit.edu>
99         * fonts.conf.in:
100
101         Give the 'Standard Symbols L' match a strong (vs. weak) binding.
102
103 2006-04-14  Patrick Lam  <plam@mit.edu>
104         * src/fcname.c (FcObjectToPtrLookup):
105
106         Fix Gecko-exposed segfault from my last hack to
107         FcObjectToPtrLookup.  Simplify code and get things straight.
108
109 2006-04-14  Patrick Lam  <plam@mit.edu>
110         * fonts.conf.in:
111
112         Actually, just add URW fonts as aliases for all of the PostScript
113         fonts.  (reported by Miguel Rodriguez). 
114
115 2006-04-13  Patrick Lam  <plam@mit.edu>
116         * fonts.conf.in:
117
118         Add an alias 'Standard Symbols L' for 'Symbol'.
119
120 2006-04-12  Frederic Crozat  <fcrozat@mandriva.com>
121         reviewed by: plam
122         
123         * src/fcpat.c: (FcPatternFreeze):
124         Fix memory leak (Coverity defect #2089).
125
126         * src/fcfreetype.c: (GetScriptTags):
127         Ignore script if subtable is missing (Coverity defect #2088).
128
129 2006-04-12  Patrick Lam  <plam@mit.edu>
130         * src/fccfg.c (FcConfigSubstituteWithPat):
131
132         Fix possible null pointer dereference (Coverity defect #784)
133         and memory leak (Coverity defects #785, #786).
134
135 2006-04-12  Patrick Lam  <plam@mit.edu>
136         * src/fcmatch.c (FcSortWalk, FcFontSetSort):
137
138         Don't copy FcCharSet if we're going to throw it away anyway.
139         (Reported by Kenichi Handa).
140
141 2006-04-11  Ming Zhao  <ming@gentoo.org>
142         reviewed by: plam
143         
144         * src/fcname.c (FcObjectToPtrLookup):
145
146         Fix bad behaviour on realloc resulting in crash.
147
148 2006-04-11  Patrick Lam  <plam@mit.edu>
149         * src/fccache.c (FcGlobalCacheReadDir):
150
151         Don't crash if config is null (Coverity defect #984).
152
153 2006-04-11  Frederic Crozat  <fcrozat@mandriva.com>
154         reviewed by: plam
155
156         * src/fccharset.c (FcCharSetPutLeaf):
157         * src/fclang.c (FcNameUnparseLangSet):
158
159         Missing bits from previous patches.
160
161         * src/fccharset.c (FcCharSetSubtractCount):
162         Remove extra semi-colon.
163
164         * src/fccfg.c (FcConfigBuildFonts):
165         Fix memory leak in error case (Coverity defects #776, #985).
166
167         * src/fcxml.c (FcPopBinary, FcParsePatelt, FcParsePattern):
168         Fix memory leaks (Coverity defects #779, #781) 
169         and memory use after free (Coverity defect #780).
170
171 2006-04-11  Patrick Lam  <plam@mit.edu>
172         * src/fccharset.c (FcCharSetPutLeaf):
173
174         Properly convert static charsets to dynamic charsets.
175
176 2006-04-11  Frederic Crozat  <fcrozat@mandriva.com>
177         reviewed by: plam
178         
179         * src/fcpat.c: (FcValueListEntCreate, FcPatternBaseFreeze,
180         FcPatternFreeze):
181         Fix memory leak in error case (Coverity defects #1820, #1821, #1822).
182
183         * src/fclang.c: (FcNameUnparseLangSet):
184         Fix memory leak (Coverity defect #1819).
185
186         * fc-lang/fc-lang.c: (scan):
187         prevent crash when invalid include line is parsed (Coverity defect
188         #763).
189
190         * fc-cat/fc-cat.c: (FcCacheFileRead):
191         Fix potential null pointer access (Coverity defect #1804).
192
193         * src/fcname.c: (FcObjectUnserialize):
194         Remove dead code (Coverity defect #1194).
195
196         * src/fcfreetype.c: (GetScriptTags):
197         Prevent potential null pointer access (Coverity defect #767),
198         ensure error value is read (Coverity defect #1195).
199
200 2006-04-11  Behdad Esfahbod  <behdad@cs.toronto.edu>
201         reviewed by: plam
202
203         * doc/Makefile.am:
204
205         Survive missing docbook2pdf.
206
207 2006-04-10  Patrick Lam  <plam@mit.edu>
208         * fc-case/fc-case.c:
209         * fc-glyphname/fc-glyphname.c:
210         * fc-lang/fc-lang.c:
211
212         Include more stub definitions to make HP-UX's C compiler happy.
213
214 2006-04-10  Patrick Lam  <plam@mit.edu>
215         * src/fcname.c (FcObjectUnserialize):
216
217         Swap typo in order of ALIGN and dereferencing, fixing bug 6529.
218
219 2006-04-10  Frederic Crozat  <fcrozat@mandriva.com>
220         reviewed by: plam
221         
222         * src/fccfg.c: (FcConfigEvaluate):
223         Fix string memory leak (Coverity defect #1823).
224         
225         * src/fccache.c: (FcDirCacheUnlink):
226         Fix memory leak with hash collision (Coverity defect #1824).
227
228 2006-04-10  Frederic Crozat  <fcrozat@mandriva.com>
229         reviewed by: plam
230         
231         * src/fccache.c: (FcGlobalCacheSave):
232         Don't leak header in non-error case (Coverity defect #1825).
233
234 2006-04-10  Frederic Crozat  <fcrozat@mandriva.com>
235         reviewed by: plam
236
237         * src/fcdir.c (FcDirScanConfig)
238         Don't leak in error cases (Coverity defects #777, #1826)
239
240 2006-04-10  Frederic Crozat  <fcrozat@mandriva.com>
241         reviewed by: plam
242
243         * src/fccache.c: (FcDirCacheWrite):
244         Fix double free (spotted by Coverity, CID #1965).
245
246         * fc-match/fc-match.c: (main):
247         Check if pattern is not null before using it (Coverity defect #1883).
248
249         * src/fccache.c: (FcDirCacheWrite):
250         Fix memory leak with hash collision (Coverity defect #1829).
251
252         * src/fccfg.c: (FcConfigBuildFonts):
253         Fix memory leak when bail cases (Coverity defect #1828).
254
255         * src/fccache.c: (FcGlobalCacheLoad):
256         Don't leak directory name (Coverity defect #1827).
257
258 2006-04-07  Dominic Lachowicz  <cinamod@hotmail.com>
259         reviewed by: plam
260         * fc-cache/Makefile.am:
261         * fc-cat/Makefile.am:
262         * fc-list/Makefile.am:
263         * fc-match/Makefile.am:
264
265         LD_ADD missing dependencies for binaries.  Reported by
266         Edson Alves Pereira.
267
268 2006-04-07  Patrick Lam  <plam@mit.edu>
269         * src/fcint.h:
270         * fc-lang/fc-lang.c (main):
271
272         SGI compilation fixes (reported by Christoph Bauer):
273         1) reorder union definition of _FcChar;
274         2) omit .stats =.
275
276 2006-04-07  Dominic Lachowicz  <cinamod@hotmail.com>
277         reviewed by: plam
278         * configure.in:
279         * src/fccharset.c (FcCharSetNeededBytes):
280         * src/fcfs.c (FcFontSetNeededBytes):
281         * src/fcint.h:
282         * src/fclang.c (FcLangSetNeededBytesAlign):
283         * src/fcname.c (FcObjectNeededBytesAlign):
284         * src/fcpat.c (FcPatternNeededBytesAlign, 
285                        FcValueListNeededBytesAlign, FcStrNeededBytesAlign):
286
287         Portability fixes for HP-UX (reported by Christoph Bauer).
288         Replace '__inline__' by AC_C_INLINE and 'inline'.
289         Replace '__alignof__' by 'fc_alignof'.
290
291 2006-04-07  Dominic Lachowicz  <cinamod@hotmail.com>
292         reviewed by: plam
293         * src/fcint.h:
294
295         Move up #include of config.h.
296         Fail if neither inttypes.h nor stdint.h is available.
297         Fixes bug 6171.
298
299 2006-04-07  Dominic Lachowicz  <cinamod@hotmail.com>
300             Patrick Lam  <plam@mit.edu>
301         * configure.in:
302         * fc-cache/fc-cache.c:
303         * fc-cat/fc-cat.c:
304         * src/fccache.c (FcGlobalCacheSave, FcCacheNextOffset, 
305                          FcDirCacheConsume, FcDirCacheProduce, 
306                          FcDirCacheWrite, FcCacheMachineSignature):
307         * src/fcfreetype.c (FcFreeTypeQuery):
308         * src/fontconfig.def.in:
309
310         Make fontconfig compile under MinGW: 
311         1) remove unneeded #includes;
312         2) make use of mmap and sysconf conditional;
313         3) replace rand_r by srand/rand if needed;
314         4) use chsize instead of ftruncate; and
315         5) update libtool exports file
316
317 2006-04-07  Patrick Lam  <plam@mit.edu>
318         * src/fcdir.c (FcDirScanConfig):
319
320         Eliminate warning.
321
322 2006-04-06  Patrick Lam  <plam@mit.edu>
323         * fc-match/.cvsignore:
324         * fc-match/Makefile.am:
325         * fc-match/fc-match.sgml:
326
327         Update documentation for fc-match (SGML-ize it).
328         (reported by Ilya Konstantinov)
329
330 2006-04-06  Diego Pettenò  <flameeyes@gentoo.org>
331         reviewed by: plam
332         * src/fcdefault.c:
333         * src/fcpat.c:
334         * src/fcxml.c:
335
336         Reduce amount of dirty rss by const'ing some data structures.
337
338 2006-04-06  Patrick Lam  <plam@mit.edu>
339         * fc-cache/Makefile.am:
340
341         Don't fail if we can't create or remove 
342         $(pkgcachedir) i.e. /var/cache/fontconfig.
343         (reported by Quanah Gibson-Mount).
344
345 2006-04-06  Kjartan Maraas  <kmaraas@gnome.org>
346         reviewed by: plam
347         * fc-case/fc-case.c:
348         * fc-glyphname/fc-glyphname.c:
349         * fc-lang/fc-lang.c (main):
350         * fc-match/fc-match.c:
351         * src/fccache.c (FcGlobalCacheSave, FcCacheSkipToArch, 
352                          FcDirCacheWrite):
353         * src/fcfreetype.c (FcFreeTypeQuery):
354         * src/fclang.c (FcFreeTypeLangSet):
355         * src/fcxml.c:
356
357         Fix intel compiler warnings: make many variables static,
358         eliminate duplicate names, reduce variable scopes, unsigned/signed
359         printf formatting.
360
361 2006-03-24  Mike Fabian  <mfabian@suse.de>
362         reviewed by: plam
363         * src/fccache.c (FcGlobalCacheLoad, FcCacheSkipToArch):
364
365         Fix multiarch support (don't destroy multiarch files!)
366
367 2006-03-24  Patrick Lam  <plam@mit.edu>
368         * configure.in:
369
370         Require pkg-config.  (Thanks Behdad; 
371         better solution wanted for libxml2 detection!)
372
373 2006-03-22  Patrick Lam  <plam@mit.edu>
374         * src/fcatomic.c:
375
376         On Windows, unlink before rename.  Reported by Tim Evans.
377
378 2006-03-15  Patrick Lam  <plam@mit.edu>
379         * fc-lang/ab.orth:
380         * fc-lang/ibo.orth:
381
382         Fix typos in orth files.  Reported by Denis Jacquerye.
383
384 2006-03-08  Patrick Lam  <plam@mit.edu>
385         * Makefile.am:
386         * config/config.guess:
387         * config/config.sub:
388
389         Fix Makefile.am for removal of debian/ directory.
390
391 2006-03-08  Patrick Lam  <plam@mit.edu>
392         * .cvsignore
393
394         Ignore debian/ directory for CVS.
395
396 2006-03-08  Patrick Lam  <plam@mit.edu>
397         * debian/*
398
399         Now remove debian/ directory.
400
401 2006-03-08  Patrick Lam  <plam@mit.edu>
402         * debian/po/*
403
404         Remove debian/ directory from sources.  See Debian's subversion
405         server at svn://svn.debian.org/pkg-freedesktop/trunk/fontconfig
406         instead.
407
408 2006-03-08  Denis Jacquerye  <moyogo@gmail.com>
409         reviewed by: plam
410
411         * fc-lang/ln.orth:
412         * fc-lang/iso639-1, fc-lang/iso639-2:
413
414         Add orthography for Lingala.
415         
416 2006-03-08  Carl Worth  <cworth@cworth.org>
417         reviewed by: keithp
418
419         * conf.d/Makefile.am:
420         * conf.d/10LohitGujarati.conf: 
421
422         Add a configuration file that disables hinting for the Lohit
423         Gujarati font (since the hinting distort some glyphs quite badly).
424
425 2006-03-08  Egmont Koblinger  <egmont@uhulinux.hu>
426         reviewed by: plam
427
428         * src/fcdir.c (FcDirScanConfig):
429
430         Sort directory entries while scanning them from disk;
431         prevents Heisenbugs due to file ordering in a directory.
432
433 2006-03-07  Behdad Esfahbod  <behdad@cs.toronto.edu>
434         reviewed by: plam
435
436         * src/fcfreetype.c (GetScriptTags):
437         * src/ftglue.c, src/ftglue.h:
438
439         Remove stuff we don't use, make get_{char,short,long} functions
440         of ftglue macros to be inlined.
441         
442         * src/fcint.h:
443         * src/fcname.c (FcObjectSerialize):
444
445         Code cleanups (excess prototype, old-style function definition).
446
447 2006-03-05  Patrick Lam  <plam@mit.edu>
448         * src/fcpat.c (FcPatternGetString):
449
450         Because we hacked FcPatternGet, we don't really need to expand the
451         filename again in FcPatternGetString.
452
453 2006-03-05  Patrick Lam  <plam@mit.edu>
454         * src/fcpat.c (FcPatternGetString, FcPatternGet):
455
456         Ok, so some people (wine!) use FcPatternGet to fetch FC_FILE.
457         Make that work.  Reported by Bernhard Rosenkraenzer.
458
459 2006-03-03  Patrick Lam  <plam@mit.edu>
460         * src/fcint.h:
461
462         Include inttypes.h instead of stdint.h if appropriate.
463
464 2006-03-03  Patrick Lam  <plam@mit.edu>
465         * fc-cat/fc-cat.c (FcFileIsDir):
466         * fc-glyphname/fc-flyphname.c:
467
468         More stub definitions and remove FcFileIsDir from fc-cat.
469
470 2006-03-03  Patrick Lam  <plam@mit.edu>
471         * fc-case/fc-case.c:
472
473         Fix compilation on AIX with stub definitions (bug 6097).
474
475 2006-03-03  Patrick Lam  <plam@mit.edu>
476         * src/fccache.c (FcCacheSkipToArch, FcDirCacheProduce):
477         * src/fcfreetype.c (GetScriptTags):
478         * src/fcfs.c (FcFontSetDistributeBytes):
479         * src/fcpat.c (FcValueListEntCreate, FcValueListNeededBytes):
480
481         Get rid of C++-style comments.
482
483 2006-03-03  Patrick Lam  <plam@mit.edu>
484         * debian/changelog
485
486         Enable creation of 2.3.94 Debian packages.
487
488 2006-03-02  Egmont Koblinger  <egmont@uhulinux.hu>
489         reviewed by: plam
490         
491         * src/fclang.c (FcCharSetForLang):
492
493         Fix suspicious return expression which causes junk 
494         to be returned.
495
496 2006-02-24  Patrick Lam  <plam@mit.edu>
497         * ChangeLog:
498         * README:
499         * configure.in:
500         * fontconfig/fontconfig.h:
501
502         Bump version to 2.3.94.
503
504 2006-02-24  Patrick Lam  <plam@mit.edu>
505         * Makefile.am:
506
507         Fix placement of @s.
508
509 2006-02-24  Patrick Lam  <plam@mit.edu>
510         * conf.d/10-fonts-persian.conf:
511
512         Remove unconditional emboldening (per Behdad's instructions).
513
514         * Makefile.am:
515
516         Add @s to hide some echos.
517
518 2006-02-24  Mike Fabian  <mfabian@suse.de>
519             Takashi Iwai  <tiwai@suse.de>
520         reviewed by: plam
521         
522         * src/fcfreetype.c (GetScriptTags):
523
524         Fix double-free on error case.
525
526 2006-02-21  Patrick Lam  <plam@mit.edu>
527         * fc-lang/fc-lang.c (scan):
528
529         Strip \r and whitespace from input; fixes bug 3454.
530
531 2006-02-21  Patrick Lam  <plam@mit.edu>
532         * fc-lang/fc-lang.c (main):
533
534         Allocate large arrays statically in fc-lang to fix crashes under
535         MinGW/MSYS.
536
537 2006-02-21  Diego Petten  <flameeyes@gentoo.org>
538         * src/fcfreetype.c (FcFreeTypeCharIndex):
539
540         Pass the buck; make fontconfig not crash on pango badness.
541
542 2006-02-21  Patrick Lam  <plam@mit.edu>
543         * conf.d/10-fonts-persian.conf:
544
545         Use embeddedbitmap rather than rh_prefer_bitmap.
546
547 2006-02-21  Paul Cornett  <paulcor1@bullseye.com>
548         reviewed by: plam
549
550         * src/fccache.c (FcDirCacheWrite):
551         * src/fcdir.c (FcFileScanConfig):
552         * src/fcfreetype.c (FcStringInPatternElement):
553         * src/fcxml.c (FcParseFamilies):
554         * src/ftglue.c (ftglue_face_goto_table):
555
556         Eliminate redundancies.
557
558 2006-02-21  Kjartan Maraas  <kmaraas@gnome.org>
559         reviewed by: plam
560
561         * fc-list/fc-list.c (main):
562         * src/fcfreetype.c (FcFreeTypeCharSetAndSpacing):
563         * src/fcstr.c (FcStrStr):
564         * src/fcxml.c (FcConfigSaveAttr):
565
566         Eliminate unused vars reported by Intel's compiler.
567
568 2006-02-21  Aiet Kolkhi  <aietkolkhi@gmail.com>
569         reviewed by: plam
570
571         * fc-lang/ka.orth:
572
573         Remove one more archaic character.
574
575 2006-02-21  Ross Burton  <ross@burtonini.com>
576         reviewed by: plam, keithp
577
578         * src/fcxml.c (FcParsePatelt):
579
580         Freeze patterns created by configuration file for tiny 
581         memory savings (every little bit helps).
582
583 2006-02-21  Mike Fabian  <mfabian@suse.de>
584         reviewed by: plam
585         
586         * fc-cat/fc-cat.c (main):
587
588         Initialize fontconfig library in fc-cat to avoid segfault.
589
590 2006-02-18  Patrick Lam  <plam@mit.edu>
591         * fc-cache/fc-cache.c (scanDirs):
592         * src/fccache.c (FcCacheReadDirs):
593         * src/fcdir.c (FcDirScanConfig):
594
595         Fix the underlying cause of the below segfault (must usually
596         call FcDirCacheHasCurrentArch after FcDirCacheValid).
597         
598 2006-02-18  Patrick Lam  <plam@mit.edu>
599         * src/fccache.c (FcDirCacheHasCurrentArch):
600
601         Fix triggering of segfault caused by misreading cache files
602         (reported by fcrozat).
603
604 2006-02-17  Patrick Lam  <plam@mit.edu>
605         * src/fcint.h  (FC_CACHE_MAGIC):
606
607         Bump up magic version; we changed the binary format.
608
609 2006-02-17  Patrick Lam  <plam@mit.edu>
610         * fc-cat/fc-cat.c (main):
611
612         Enable fc-cat to print out old-style cache info when given a
613         directory name.
614
615 2006-02-16  Patrick Lam  <plam@mit.edu>
616         * src/fccache.c (FcDirCacheHasCurrentArch):
617
618         Deal correctly with changing FC_CACHE_MAGIC.
619
620 2006-02-16  Patrick Lam  <plam@mit.edu>
621         * fc-cache/fc-cache.c (usage, scanDirs, main):
622
623         Add -r --really-force option which blows away cache files and then
624         regenerates them.
625
626 2006-02-16  Patrick Lam  <plam@mit.edu>
627         * src/fccache.c (FcDirCacheUnlink, FcCacheCopyOld, FcDirCacheWrite):
628
629         Don't bail if fontconfig can't remove a dir cache file.
630         Skip the ID of a cache file when copying.
631         Eliminate 'source file too small' bug in FcDirCacheWrite.
632
633 2006-02-13  Patrick Lam  <plam@mit.edu>
634         * src/fcfreetype.c (FcFreeTypeQuery):
635
636         Fix memory leak in error condition code.
637
638 2006-02-13  Mike Fabian  <mfabian@suse.de>
639         reviewed by: plam
640         * src/fcfreetype.c (FcFreeTypeQuery):
641
642         Skip bitmap fonts which can't even get it together enough to
643         declare a family name; this appears to reproduce previous
644         fontconfig behaviour.
645
646 2006-02-10  Takashi Iwai  <tiwai@suse.de>
647         reviewed by: plam
648         * src/fccache.c (FcDirCacheOpen):
649
650         Try to open /var/cache/fontconfig/[hashed name] before
651         fonts.cache-2 in a directory, because /var/cache/fontconfig
652         failures ought to be fixable, unlike fonts.cache-2 failures,
653         which may leave you screwed.
654
655 2006-02-10  Takashi Iwai  <tiwai@suse.de>
656         reviewed by: plam
657         * src/fcmatch.c (FcFontSetMatch):
658
659         Use a tri-state to mark the fonts which didn't get blocked but
660         were just missing an element, to distinguish them from the
661         fonts that do match the element.
662
663 2006-02-10  Takashi Iwai  <tiwai@suse.de>
664         reviewed by: plam
665         * src/fcmatch.c (FcFontSetMatch):
666
667         Don't kill fonts because they don't declare an element that's
668         being matched on.
669
670 2006-02-09  Patrick Lam  <plam@mit.edu>
671         * src/fccache.c (FcGlobalCacheLoad, FcGlobalCacheSave,
672                          FcDirCacheUnlink, FcDirCacheOpen, FcDirCacheWrite):
673
674         Define and pass O_BINARY to open if appropriate, for those
675         platforms that need it.  Reported by Doodle.
676
677 2006-02-09  Patrick Lam  <plam@mit.edu>
678         * src/fccharset.c (FcCharSetNeededBytes, FcCharSetSerialize, 
679                            FcCharSetGetLeaf):
680
681         Fix problem with missing 'en' due to euro.patch: change
682         cache file format slightly to coincide with that generated
683         by fc-lang.
684
685 2006-02-07  Patrick Lam  <plam@mit.edu>
686         * src/fccache.c (FcCacheReadDirs):
687
688         Fix warning.
689
690 2006-02-07  Patrick Lam  <plam@mit.edu>
691         * src/fcdir.c (FcDirScanConfig):
692
693         Don't reject dirs that can't be normalized (fixes lilypond, and
694         is correct in the context of application font directories.)
695
696 2006-02-07  Takashi Iwai  <tiwai@suse.de>
697         reviewed by: plam
698
699         * src/fccache.c (FcCacheReadDirs):
700
701         Use normalized directory name exclusively in FcCacheReadDirs.
702
703 2006-02-07  Dirk Mueller  <dmueller@suse.com>
704         reviewed by: plam
705
706         * src/fcpat.c (FcValueHash, FcValueListHash, FcValueListEntCreate): 
707
708         Perf optimizations.  Inline FcValueCanonicalize, 
709         reduce FcValueListPtrU usage, remove redundant cast.
710
711 2006-02-07  Takashi Iwai  <tiwai@suse.de>
712         reviewed by: plam
713
714         * src/fccharset.c (FcLangCharSetPopulate, FcCharSetInsertLeaf)
715         * fc-lang/fc-lang.c:
716
717         Fix missing FcCacheBankToIndex in FcCharSetInsertLeaf.
718         Declare extern for static arrays as arrays, not pointers.
719         (Part of the fix for 'fonts don't have en' issue after Euro patch.)
720
721 2006-02-07  Dirk Mueller  <dmueller@suse.com>
722         reviewed by: plam
723
724         * fc-lang/de.orth:
725         * fc-lang/el.orth:
726         * fc-lang/en.orth:
727         * fc-lang/es.orth:
728         * fc-lang/fi.orth:
729         * fc-lang/fr.orth:
730         * fc-lang/it.orth:
731         * fc-lang/nl.orth:
732         * fc-lang/pt.orth:
733
734         Add Euro sign to list of symbols required by European languages.
735
736 2006-02-07  Patrick Lam  <plam@mit.edu>
737         * src/fccache.c (FcCacheReadString):
738
739         Fix hidden variable warning.
740
741 2006-02-07  Dirk Mueller  <dmueller@suse.com>
742         reviewed by: plam
743
744         * src/fccache.c (FcCacheReadString, FcCacheSkipString):
745         
746         Remove de-escaping logic because FcCacheWriteString
747         doesn't escape anyway. Do blockwise reading instead
748         of byte-wise for performance.
749
750 2006-02-06  Patrick Lam  <plam@mit.edu>
751             Takashi Iwai  <tiwai@suse.de>
752
753         * src/fccache.c (FcCacheReadDirs, FcCacheRead):
754
755         Don't loop infinitely on recursive symlinks (client-side).
756
757 2006-02-06  Takashi Iwai  <tiwai@suse.de>
758         reviewed by: plam
759         * fc-cache/fc-cache.c (scanDirs, main):
760
761         Don't loop infinitely on recursive symlinks.
762
763 2006-02-06  Takashi Iwai  <tiwai@suse.de>
764         reviewed by: plam
765         * src/fccache.c (FcGlobalCacheLoad, FcGlobalCacheReadDir,
766                          FcGlobalCacheDirFind, FcGlobalCacheUpdate,
767                          FcGlobalCacheSave, FcCacheReadDirs):
768         * src/fcint.h:
769
770         Skip subdirs when skipping over stale bits of global cache.
771         Introduce state machine into FcGlobalCacheDir to avoid
772         doing inappropriate operations on global dir entries, e.g.
773         writing out an out-of-date cache entry.
774         
775 2006-02-06  Takashi Iwai  <tiwai@suse.de>
776         reviewed by: plam
777         * src/fcdir.c (FcFileScanConfig):
778
779         Hoist FcFileIsDir check out of FcFileScanConfig loop.
780
781 2006-02-06  Takashi Iwai  <tiwai@suse.de>
782         reviewed by: plam
783
784         * src/fccfg.c (FcConfigInodeMatchFontDir, FcConfigAddFontDir,
785                        FcConfigAddFontDirSubdirs, FcConfigNormalizeFontDir):
786
787         Don't rescan when trying to normalize a non-declared font dir.
788         Don't add font dirs multiple times (even if they're aliased).
789
790 2006-02-06  Dirk Mueller  <dmueller@suse.de>
791         reviewed by: plam
792
793         * src/fcfs.c (FcFontSetUnserialize):
794
795         Explain apples/oranges comparison and fix compilation error.
796
797 2006-02-06  Dirk Mueller  <dmueller@suse.de>
798         reviewed by: plam
799
800         * src/fcfs.c (FcFontSetUnserialize):
801
802         Insert check for integer overflow in # of fonts.
803
804 2006-02-04  Behdad Esfahbod  <behdad@cs.toronto.edu>
805         reviewed by: plam
806
807         * doc/Makefile.am:
808         * fc-cache/Makefile.am:
809         * fc-cat/Makefile.am: 
810         * fc-list/Makefile.am:
811
812         Make 'make distcheck' work with automake 1.6.3.
813         
814 2006-02-03  Takashi IWAI  <tiwai@suse.de>
815         reviewed by: plam
816
817         * fc-cat/fc-cat.c (FcCacheGlobalFileReadAndPrint, main,
818                            FcCacheFileRead):
819
820         * src/fccache.c (FcGlobalCacheLoad, FcGlobalCacheSave, 
821                          FcDirCacheConsume, FcDirCacheWrite)
822         * src/fcxml.c (FcConfigMessage):
823
824         Check I/O call return values and eliminate unused variable
825         warnings.
826
827 2006-02-03  Takashi Iwai  <tiwai@suse.de>
828         reviewed by: plam
829
830         * src/fccfg.c (FcConfigAppFontAddFile, FcConfigAppFontAddDir)
831
832         Fix memory leak.
833
834 2006-02-03  Dirk Mueller  <dmueller@suse.de>
835         reviewed by: plam
836
837         * src/fcfs.c (FcFontSetUnserialize):
838
839         Gracefully handle the case where a cache asserts that it
840         has a negative number of fonts, causing overflow.
841
842 2006-02-03  Patrick Lam  <plam@mit.edu>
843         * src/fccache.c (FcDirCacheUnlink):
844
845         Fix double free in error case.
846
847 2006-01-31  Behdad Esfabod  <behdad@cs.utoronto.edu>
848             Stephan Kulow  <coolo@suse.de>
849         reviewed by: plam
850
851         * fc-cache/Makefile.am:
852
853         Replace 'stamp' target with mkinstalldirs.
854
855 2006-01-31  Mike Fabian  <mfabian@suse.de>
856         reviewed by: plam
857
858         * src/fccache.c (FcGlobalCacheLoad):
859
860         Toast broken global cache files.
861
862 2006-01-30  Patrick Lam  <plam@mit.edu>
863         * src/fccache.c (FcGlobalCacheReadDir):
864
865         Actually use the directories that I added to the global cache.
866         Fixes 'make check'.
867
868 2006-01-30  Mike Fabian  <mfabian@suse.de>
869         reviewed by: plam
870         
871         * fc-cache/fc-cache.c (scanDirs):
872
873         Don't stop scanning if a directory in fonts.conf doesn't
874         exist, because subsequent directories might exist.
875         
876 2006-01-30  Patrick Lam  <plam@mit.edu>
877         * src/fccache.c (FcGlobalCacheLoad):
878
879         Make global cache work again after putting dir names into global
880         cache (I misplaced the recording of a file offset).
881
882 2006-01-30  Patrick Lam  <plam@mit.edu>
883         * fc-cat/fc-cat.c (FcCacheGlobalFileReadAndPrint):
884         
885         Update fc-cat to handle subdir lists in global cache file.
886         
887         * src/fccache.c (FcGlobalCacheLoad):
888         
889         Another FcCacheReadString return value check.
890
891 2006-01-30  Mike Fabian  <mfabian@suse.de>
892         reviewed by: plam
893
894         * src/fccache.c (FcGlobalCacheLoad, FcDirCacheUnlink
895                          FcDirCacheOpen, FcDirCacheRead, FcDirCacheWrite):
896
897         Make fccache more resilient to broken cache files by checking
898         return value of FcCacheReadString all the time.
899
900 2006-01-30  Frederic Crozat  <fcrozat@mandriva.com>
901         reviewed by: plam
902
903         * fc-match/fc-match.1:
904         * fc-lang/fc-lang.man:
905
906         Remove references to dead fontconfig(3) manpages in
907         other fontconfig manpages.
908
909 2006-01-29  Behdad Esfabod  <behdad@cs.utoronto.edu>
910         reviewed by: plam
911         
912         * doc/fcpattern.fncs:
913
914         Fix world's tiniest typo in code example.
915
916 2006-01-29  Mike Fabian  <mfabian@suse.de>
917         reviewed by: plam
918
919         * src/fccache.c (FcGlobalCacheReadDir):
920
921         Fix global cache reads of subdirectories.
922
923 2006-01-29  Patrick Lam  <plam@mit.edu>
924         * doc/fcconfig.fncs:
925         Add documentation for FcConfigNormalizeFontDir.
926
927         * src/fccache.c (FcGlobalCacheDirDestroy, FcGlobalCacheLoad,
928                          FcGlobalCacheUpdate, FcGlobalCacheSave):
929         * src/fcdir.c (FcDirScanConfig):
930         * src/fcint.h:
931
932         Write directory information to global caches to fix make check
933         (reported by Ronny V. Vindenes).  This changes the global cache
934         format again.
935         
936 2006-01-27  Patrick Lam  <plam@mit.edu>
937         * fc-cache/fc-cache.c (scanDirs):
938         * fontconfig/fontconfig.h:
939         * src/fcint.h:
940         * src/fccache.c (FcDirCacheValid, FcDirCacheHasCurrentArch):
941
942         Move FcConfigNormalizeFontDir call so that it doesn't result in
943         infinite recursion (reported by Ronny V. Vindenes).
944
945 2006-01-26  Patrick Lam  <plam@mit.edu>
946         * src/fccache.c (FcDirCacheValid, FcDirCacheHasCurrentArch):
947         * src/fccfg.c (FcConfigNormalizeFontDir):
948
949         Add a couple of missing normalizations to make fc-cache work
950         right; only scan subdirectories once.
951
952 2006-01-26  Mike Fabian  <mfabian@suse.de>
953         reviewed by: plam
954         
955         * src/fcacache.c (FcGlobalCacheReadDir):
956
957         Don't crash on non-existant directories in global cache.
958
959 2006-01-26  Patrick Lam  <plam@mit.edu>
960         * src/fccache.c (FcGlobalCacheSave, FcDirCacheWrite):
961         * src/fccfg.c (FcConfigAddFontDirSubdirs, FcConfigNormalizeFontDir):
962         * src/fcdir.c (FcDirScanConfig):
963         * src/fcxml.c (FcEndElement):
964
965         Stop trampling the directory name when writing out caches.
966         (with Mike Fabian:) Beef up FcConfigNormalizeFontDir to scan
967         subdirs when necessary.  Don't scan directories that can't be
968         normalized.
969
970 2006-01-25  Patrick Lam  <plam@mit.edu>
971         * src/fccache.c (FcDirCacheOpen, FcDirCacheWrite):
972         * src/fccfg.c (FcConfigEvaluate):
973         * src/fcfreetype.c (FcPatternAddWithBinding):
974
975         Fix additional memory leaks reported by Ronny V. Vindenes: don't
976         invoke FcValueSave on hashed static strings in
977         FcPatternAddWithBinding.  
978
979         Add another st_dev check in FcDirCacheOpen.
980
981 2006-01-24  James Su  <james.su@gmail.com>
982         reviewed by: plam
983         
984         * src/fcfreetype.c (FcFreeTypeIsExclusiveLang):
985         * fc-lang/zh_hk.orth:
986
987         Treat zh-hk fonts differently from zh-tw fonts.  This patch may
988         cause fontconfig to treat A-X fonts differently from A-Y fonts;
989         please mail the fontconfig list if this causes any problems.
990
991 2006-01-24  Patrick Lam  <plam@mit.edu>
992         * src/fccache.c (FcDirCacheUnlink, FcDirCacheWrite):
993         * src/fcfreetype.c (FcFreeTypeQuery):
994
995         Fix memory leaks reported by Ronny V. Vindenes.
996
997 2006-01-19  Andreas Schwab  <schwab@suse.de>
998         reviewed by: plam
999
1000         * src/fcpat.c (FcStrNeededBytes):
1001
1002         Fix for unaligned memory accesses.
1003
1004 2006-01-18  Mike Fabian  <mfabian@suse.de>
1005         reviewed by: plam
1006         
1007         * src/fcdir.c (FcDirScanConfig):
1008
1009         Properly order the FcConfigAddFontDir and FcConfigNormalizeFontDir
1010         calls to avoid crashes.
1011
1012 2006-01-14  Patrick Lam  <plam@mit.edu>
1013         * src/fccache.c (FcDirCacheConsume):
1014
1015         Fix segfault when consuming zero-length caches in fc-cat
1016         (which has no config, so FcConfigAddFontDir shouldn't be called.)
1017
1018 2006-01-14  Patrick Lam  <plam@mit.edu>
1019         * fc-cache/fc-cache.c (scanDirs):
1020         * fontconfig/fontconfig.h:
1021         * src/fccache.c (FcGlobalCacheReadDir, FcGlobalCacheUpdate,
1022                          FcGlobalCacheSave, FcDirCacheUnlink, FcDirCacheOpen):
1023         * src/fccfg.c (FcConfigBuildFonts, FcConfigNormalizeFontDir):
1024         * src/fcdir.c (FcDirScanConfig):
1025         * src/fcint.h:
1026         
1027         Compare device numbers as well as inodes.
1028         Always normalize directory names before comparing them.
1029
1030 2006-01-11  Mike Fabian  <mfabian@suse.de>
1031         reviewed by: plam
1032         
1033         * fc-cat/fc-cat.c (FcCacheGlobalFileReadAndPrint):
1034
1035         Allocate extra space for appended '/' in directory name.
1036
1037 2006-01-10  Patrick Lam  <plam@mit.edu>
1038         * src/fccache.c (FcDirCacheConsume, FcDirCacheOpen,
1039                          FcDirCacheValid, FcDirCacheHasCurrentArch,
1040                          FcDirCacheUnlink, FcDirCacheRead, FcDirCacheConsume):
1041         * fc-cache/fc-cache.c (main):
1042
1043         Explicitly add font dirs to config.fontDirs even if they're empty.
1044         Set current config in fc-cache.c.
1045         Fix treatment of cache directory as read from cache file; don't
1046         use string equality to determine if we have the right file,
1047         use inode equality.
1048
1049 2006-01-09  Patrick Lam  <plam@mit.edu>
1050         * fc-cache/fc-cache.c (scanDirs):
1051         * fc-cat/fc-cat.c (FcCacheGlobalFileReadAndPrint, FcCacheFileRead):
1052         * src/fccache.c (FcGlobalCacheReadDir, FcCacheReadDirs, 
1053                          FcDirCacheRead, FcDirCacheConsume, FcDirCacheWrite):
1054         * src/fccfg.c (FcConfigNormalizeFontDir):
1055         * src/fcdir.c (FcDirScanConfig):
1056         * src/fcint.h:
1057
1058         Normalize font dirs by using the form, as given in fonts.conf, and
1059         recorded in FcConfig's fontDirs string set, as canonical.
1060         
1061         Actually update config.fontDirs as font directories are scanned.
1062
1063 2006-01-08  James Su  <james.su@gmail.com>
1064         * src/fcmatch.c (FcFontSetMatch):
1065
1066         Fix matching bug when multiple elements match; don't use
1067         the sum of all scores, but the best score.
1068
1069         Also more perf opts, e.g. evaluate best over all font sets
1070         rather than on a per-set basis (and other changes).
1071
1072 2006-01-08  Patrick Lam  <plam@mit.edu>
1073         * src/fccache.c (FcDirCacheConsume):
1074
1075         Properly skip past dir caches that contain zero fonts (as occurs
1076         in global caches.)  Reported by Mike Fabian.
1077
1078 2006-01-06  Patrick Lam  <plam@mit.edu>
1079         * src/fcdbg.c (FcPatternPrint):
1080
1081         Print out full pathname in fc-match -v as well.  Reported by
1082         Frederic Crozat.
1083         
1084 2006-01-06  Mike Fabian  <mfabian@suse.de>
1085         reviewed by: plam
1086         
1087         * src/fcname.c (FcNameParse):
1088
1089         Fix bug where fc-match crashes when given __DUMMY__ property to
1090         match on.
1091
1092         (I added the __DUMMY__ string to enable callers of
1093         FcObjectToPtrLookup to distinguish an error return from a
1094         successful return. -PL)
1095
1096 2006-01-05  Patrick Lam  <plam@mit.edu>
1097         * AUTHORS:
1098
1099         Add self to AUTHORS list.
1100
1101         * fc-cat/fc-cat.c (FcCacheGlobalFileReadAndPrint, 
1102                            FcCacheFileRead, FcCachePrintSet, main): 
1103         * src/fccache.c (FcGlobalCacheLoad, FcGlobalCacheUpdate, 
1104                          FcGlobalCacheSave, FcCacheNextOffset, 
1105                          FcDirCacheHasCurrentArch, FcDirCacheRead, 
1106                          FcDirCacheConsume, FcDirCacheWrite): 
1107         * src/fcint.h:
1108         * src/fcpat.c (comment):
1109
1110         Minor change to global cache file format to fix fc-cat bug
1111         reported by Frederic Crozat, and buglet with not globally caching
1112         directories with zero fonts cached.
1113
1114 2006-01-02  Lubos Lunak  <l.lunak@suse.cz>
1115         reviewed by: plam
1116         
1117         * src/fccfg.c (FcConfigEvaluate):
1118
1119         Fix double-free which occurs because FcValueCanonicalize doesn't
1120         create an extra copy of the returned value, it only canonicalizes
1121         it.
1122
1123 2006-01-02  Patrick Lam  <plam@mit.edu>
1124         * doc/fontconfig-user.sgml:
1125
1126         Fix version of .cache file (currently 1 -> currently 2).  Reported
1127         by Jim Osborn.
1128
1129 2005-12-21  Jinghua Luo  <sunmoon1997@gmail.com>
1130         reviewed by: plam
1131
1132         * src/fcpat.c (FcPatternAddFullFname, FcPatternFindFullFname):
1133
1134         Shut up GCC warnings on amd.
1135
1136 2005-12-20  Patrick Lam  <plam@mit.edu>
1137         * ChangeLog:
1138         * README:
1139         * configure.in:
1140         * fontconfig/fontconfig.h:
1141
1142         Bump version to 2.3.93.
1143
1144 2005-12-20  Patrick Lam  <plam@mit.edu>
1145         * src/fccharset.c (FcLangCharSetPopulate):
1146         * src/fcint.h (FcCacheBankToIndex):
1147
1148         Avoid check on _fcBankId nullness and fix case where it used to
1149         crash.
1150
1151 2005-12-20  Patrick Lam  <plam@mit.edu>
1152         * src/fcxml.c (FcConfigParseAndLoad):
1153
1154         Use open instead of fopen (requested by Phil Race for Sun).
1155
1156 2005-12-20  Patrick Lam  <plam@mit.edu>
1157         * src/fccache.c (FcDirCacheWrite);
1158         * fc-cache/Makefile.am:
1159
1160         Fix GCC4 warning and Makefile brokenness for /var/cache/fontconfig
1161         dir.
1162
1163 2005-12-20  Patrick Lam  <plam@mit.edu>
1164         * src/fcfreetype.c (FcFreeTypeQuery):
1165
1166         Restore code to skip over PCF fonts that have no encoded
1167         characters.
1168         (We guess that a font is PCF by presence of the PIXEL_SIZE
1169         BDF property.)
1170
1171 2005-12-12  Patrick Lam  <plam@mit.edu>
1172         * src/fccache.c (FcDirCacheOpen, FcDirCacheWrite):
1173
1174         Read and write the original location as a fallback for the
1175         hashed cache file locations.  This is mostly for users to be
1176         able to have per-directory cache files.
1177
1178 2005-12-12  Patrick Lam  <plam@mit.edu>
1179         * fc-cache/fc-cache.c (scanDirs):
1180         * fc-cache/Makefile.am:
1181         * src/fccache.c (FcDirCacheHashName):
1182
1183         Improve error message when fc-cache can't write the cache.  Add
1184         missing slash.  Reported by Behdad.  Incorporate Behdad's patch to
1185         create /var/cache/fontconfig when appropriate.
1186
1187 2005-12-12  Behdad Esfahbod  <behdad@cs.toronto.edu>
1188         reviewed by: plam
1189         
1190         * src/fcxml.c (FcConfigGetAttribute):
1191
1192         Fix crash reported by Frederic Crozat when using libxml2.
1193
1194 2005-12-09  Patrick Lam  <plam@mit.edu>
1195         * INSTALL:
1196         * configure.in:
1197         * fc-cache/Makefile.am:
1198         * fc-cat/Makefile.am:
1199         * src/Makefile.am:
1200         * fc-cat/fc-cat.c (FcCacheGlobalFileReadAndPrint, FcCacheFileRead):
1201         * fontconfig/fontconfig.h (FC_CACHE_SUFFIX):
1202         * src/fccache.c (FcCacheSkipString, FcGlobalCacheLoad,
1203                         FcGlobalCacheSave, FcCacheNextOffset, FcDirCacheValid,
1204                         FcDirCacheHasCurrentArch, FcDirCacheHashName,
1205                         FcDirCacheOpen, FcDirCacheRead, FcDirCacheWrite):
1206
1207         Migrate cache files from fonts directories to
1208         /var/cache/fontconfig.  This helps make fontconfig FHS-compliant,
1209         but requires that all caches get rebuilt.
1210
1211         Also, autogen.sh now needs the additional parameter
1212         --localstatedir=/var.
1213         
1214 2005-12-07  Patrick Lam  <plam@mit.edu>
1215         * src/fcpat.c (FcPatternAddString):
1216
1217         Because we've changed FcPatternAddString to use FcStrStaticName
1218         and not FcValueSave, explicitly handle the case of a null string.
1219
1220 2005-12-06  Patrick Lam  <plam@mit.edu>
1221         * fc-cat/fc-cat.c (FcCachePrintSet, FcCacheGlobalFileReadAndPrint):
1222
1223         Fix warnings.
1224
1225 2005-12-05  Patrick Lam  <plam@mit.edu>
1226         * src/fcname.c (FcNameGetObjectType):
1227
1228         Don't assign types to user object names.
1229
1230 2005-12-05  Patrick Lam  <plam@mit.edu>
1231         * src/fcpat.c (FcValueDestroy, FcValueListDestroy, FcStrHashed):
1232
1233         Don't free strings that have been returned from FcStrStaticName.
1234
1235 2005-12-01  Patrick Lam  <plam@mit.edu>
1236         * fc-cat/fc-cat.c (FcCacheGlobalFileReadAndPrint, main):
1237
1238         Add codepath for reading global cache files as well.
1239
1240 2005-12-01  Behdad Esfahbod  <behdad@cs.toronto.edu>
1241         reviewed by: plam
1242
1243         * conf.d/10-fonts.persian.conf:
1244         * conf.d/Makefile.am:
1245
1246         Add config file for Persian fonts from Sharif FarsiWeb, Inc.
1247
1248 2005-11-30  Behdad Esfahbod  <behdad@cs.toronto.edu>
1249         reviewed by: plam
1250
1251         * src/fcxml.c (FcConfigParseAndLoad):
1252
1253         Only add a config file to the set of config files once.
1254
1255 2005-11-29  Patrick Lam  <plam@mit.edu>
1256         * src/fcint.h (FcCacheBankToIndex);
1257
1258         Fix segfault by guarding array dereference.
1259
1260 2005-11-29  Dirk Mueller  <dmueller@suse.de>
1261         reviewed by: plam
1262         
1263         * fc-lang/fc-lang.c:
1264         * src/fccache.c (FcDirCacheConsume, FcCacheHaveBank,
1265                          FcCacheBankToIndex, FcCacheBankToIndexMTF,
1266                          FcCacheAddBankDir):
1267         * src/fcint.h:
1268
1269         Refactor FcCacheBankToIndex into an inlineable part
1270         (in fcint.h) which checks the front of the list and a
1271         non-inlineable part which finds and moves the appropriate element
1272         to the front of the list.
1273
1274 2005-11-29  Patrick Lam  <plam@mit.edu>
1275         * src/fccfg.c (FcConfigBuildFonts):
1276         * src/fccache.c (FcCacheReadDirs):
1277
1278         Make the perf guys hate me a bit less: hoist the directory-name
1279         FcConfigAcceptFont check for cached fonts up to directory cache
1280         read time, rather than running it for each font.
1281
1282 2005-11-29  Patrick Lam  <plam@mit.edu>
1283         * src/fccfg.c (FcConfigBuildFonts):
1284         * src/fcint.h:
1285         * src/fcpat.c (FcPatternFindFullFname):
1286
1287         Don't make FcPatternFindFullFname available to fccfg, it's not
1288         really safe.  Instead go through FcPatternGetString (sorry,
1289         perf guys.)  Also, use globs for dirs as well.
1290
1291 2005-11-28  Patrick Lam  <plam@mit.edu>
1292         * src/fccfg.c (FcConfigBuildFonts):
1293
1294         Fix segfault.
1295
1296 2005-11-28  Patrick Lam  <plam@mit.edu>
1297         * src/fcint.h:
1298         * src/fcpat.c (FcPatternFindFullFname):
1299         * src/fccfg.c (FcConfigBuildFonts):
1300
1301         Fix problem dating back at least to 2.3.2 where globs weren't
1302         being applied to patterns loaded from a cache.
1303
1304 2005-11-28  Patrick Lam  <plam@mit.edu>
1305         * doc/fontconfig-user.sgml:
1306
1307         Fix some obvious spelling mistakes.
1308         
1309 2005-11-28  Dirk Mueller  <dmueller@suse.com>
1310             Stephan Kulow  <coolo@suse.de>
1311         reviewed by: plam
1312
1313         * src/fcmatch.c (FcFontSetMatch):
1314
1315         Don't kill all fonts during match (oops!)
1316
1317
1318 2005-11-25  Dirk Mueller  <dmueller@suse.com>
1319             Stephan Kulow  <coolo@suse.de>
1320             Michael Matz  <matz@suse.de>
1321         reviewed by: plam
1322
1323         * src/fcmatch.c (FcObjectPtrToMatcher, FcCompareValueList,
1324                 FcFontSetMatch):
1325
1326         Rewrite FcFontSetMatch to a path-finding based algorithm, i.e.
1327         inline FcCompare into FcFontSetMatch and reorder the
1328         loops, adding a boolean array which blocks patterns from future
1329         consideration if they're known to not be best on some past
1330         criterion.
1331
1332 2005-11-26  Dirk Mueller  <dmueller@suse.com>
1333         reviewed by: plam
1334         
1335         * src/fcmatch.c (FcCompareValueList):
1336
1337         Fix incorrect merge.
1338
1339 2005-11-25  Patrick Lam  <plam@mit.edu>
1340         * src/fcmatch.c (FcMatchObjectPtrsInit, FcCompareValueList):
1341
1342         Don't do random matching when bad objects are passed into
1343         FcCompareValueList.
1344
1345 2005-11-25  Patrick Lam  <plam@mit.edu>
1346         * src/fcint.h:
1347         * src/fcpat.c (FcPatternEnsureBank, FcPatternDistributeBytes, 
1348                         FcPatternSerialize, FcPatternUnserialize, 
1349                         FcValueListEnsureBank, FcValueListDistributeBytes,
1350                         FcValueListUnserialize):
1351
1352         Rename fcpatterns, fcpatternelts, fcvaluelists to _fcPatterns,
1353         _fcPatternElts, _fcValueLists for consistency.
1354
1355 2005-11-25  Dirk Mueller  <dmueller@suse.com>
1356         reviewed by: plam
1357
1358         * src/fcmatch.c:
1359
1360         Pass the FcObjectPtr to FcCompareValueList, not the char * (perf).
1361
1362 2005-11-25  Patrick Lam  <plam@mit.edu>
1363         * src/fcint.h:
1364         * src/fccache.c (FcDirCacheConsume):
1365         * src/fccharset.c (FcCharSetUnserialize):
1366         * src/fcfs.c (FcFontSetUnserialize):
1367         * src/fclang.c (FcLangSetUnserialize):
1368         * src/fcname.c (FcObjectUnserialize):
1369         * src/fcpat.c (FcStrUnserialize, FcValueListUnserialize, 
1370                         FcPatternUnserialize):
1371
1372         Pass around FcCache *s to the Unserialize functions for extra
1373         consistency (and less overhead, for what that's worth).
1374
1375 2005-11-24  Dirk Mueller  <dmueller@suse.com>
1376         reviewed by: plam
1377
1378         * src/fcint.h:
1379         * src/fcmatch.c (FcCompare*, FcFontSetSort):
1380         * src/fcname.c (FcNameUnparseValue):
1381
1382         Inline the *PtrU functions to gain perf.
1383         Remove unneeded params for the FcCompare* functions.
1384
1385 2005-11-24  Dirk Mueller  <dmueller@suse.com>
1386         reviewed by: plam
1387         
1388         * src/fcint.h, fontconfig/fontconfig.h: 
1389         
1390         Move FC_BANK_DYNAMIC, FC_BANK_FIRST to internal header.
1391
1392         * src/fcpat.c, src/fcint.h, src/fcname.c:
1393           
1394         Check for type validity during FcPatternAddWithBinding, don't
1395         verify type in FcFontMatch, don't call FcCanonicalize here
1396         (which always does a deep copy).
1397
1398 2005-11-24  Dirk Mueller  <dmueller@suse.com>
1399         reviewed by: plam
1400
1401         * src/fcmatch.c (FcCompareNumber, FcCompareString, FcCompareFamily):
1402         * src/fcpat.c (FcPatternAddWithBinding):
1403
1404         Make FcCompareString and FcCompareFamily less expensive.
1405         Only add a value for FC_FAMILY if the proposed value is a string.
1406
1407 2005-11-24  Dirk Mueller  <dmueller@suse.com>
1408         reviewed by: plam
1409         
1410         * src/fcdbg.c (FcDebug, FcDebugInit, FcPatternPrint):
1411         * src/fcinit.c (FcInitLoadConfig, FcInitLoadConfigAndFonts):
1412         * src/fcint.h (FcDebug):
1413         
1414         Inline FcDebug invocations and only initialize once, in FcInit*.
1415         Improve debug msg in FcPatternPrint.
1416
1417 2005-11-23  Frederic Crozat  <fcrozat@mandriva.com>:
1418         reviewed by: plam
1419         
1420         * fontconfig/fontconfig.h:
1421         * fc-cat/fc-cat.c:
1422
1423         Minor code warning cleanups.
1424
1425 2005-11-23  Frederic Crozat  <fcrozat@mandriva.com>:
1426         reviewed by: plam
1427         
1428         * fc-match/fc-match.c (main):
1429
1430         Make getopt_long accept -s parameter to fc-match as well.
1431
1432 2005-11-21  Dirk Mueller <dmueller@suse.com>
1433         reviewed by: plam
1434
1435         * src/fcmatch.c (FcCompareValueList):
1436
1437         Manually perform inlining & partial redundancy elimination to
1438         reduce calls to FcValueListPtrU.
1439
1440 2005-11-21  Dirk Mueller <dmueller@suse.com>
1441         reviewed by: plam
1442
1443         * src/fcstr.c (FcStrFree, FcStrCaseWalkerInit, FcStrCaseWalkerLong,
1444                        FcStrCaseWalkerNext, FcStrCaseWalkerNextIgnoreBlanks): 
1445
1446         Only invoke strlen() when really necessary.
1447         
1448 2005-11-19  Matthias Clasen  <mclasen@redhat.com>
1449         reviewed by: plam
1450
1451         * src/Makefile.am:
1452         * src/fcfreetype.c (FcGetPixelSize, FcFreeTypeQuery, GetScriptTags,
1453                             FcFontCapabilities):
1454         * src/ftglue.c:
1455         * src/ftglue.h:
1456
1457         Get rid of the use of freetype internal headers in fcfreetype.c,
1458         since those headers will go away with freetype 2.2.  Replace with
1459         public domain ftglue code from pango.  Note that the patch removes
1460         some extra error checking in FT_Get_BDF_Property() and comments
1461         out the skipping of empty pcf fonts.
1462
1463 2005-11-19  Jinghua Luo  <sunmoon1997@gmail.com>
1464         reviewed by: plam
1465
1466         * fc-lang/fc-lang.c (main):
1467
1468         Further fix of patch from 2005-11-04: miscounted numbers count
1469         (numbers_count); didn't strip duplicate numbers (langBankNumbers);
1470         and leafidx_offset and numbers_offset in fcLangCharSets are wrong.
1471
1472         Removed leafidx_count and numbers_count since they are the same
1473         and replaced them with offset_count.
1474
1475 2005-11-18  Frederic Crozat  <fcrozat@mandriva.com>
1476         reviewed by: plam
1477
1478         * fc-cat/fc-cat.c (main):
1479
1480         Don't crash when fc-cat invoked with no arguments.
1481
1482 2005-11-18  Frederic Crozat  <fcrozat@mandriva.com>
1483         reviewed by: plam
1484
1485         * src/fcxml.c (FcConfigSaveAttr, FcConfigParseAndLoad):
1486
1487         Fix invalid read access caused by premature free and
1488         GCC4 warnings in libxml2 codepath.
1489
1490 2005-11-17  Jinghua Luo  <sunmoon1997@gmail.com>
1491         reviewed by: plam
1492
1493         * src/fccfg.c (FcConfigValues):
1494
1495         List iteration not needed in FcConfigValues, since it's building
1496         up the list itself; we can just strip FcVoid elements during
1497         construction.
1498
1499 2005-11-17  Patrick Lam  <plam@mit.edu>
1500         * src/fccfg.c (FcConfigValues):
1501
1502         Fix crash on invalid constants in config files (forgot to update
1503         a pointer upon list iteration.)
1504
1505 2005-11-17  Frederic Crozat  <fcrozat@mandriva.com>
1506         reviewed by: plam
1507
1508         * src/fcxml.c (FcTypecheckExpr):
1509
1510         Complain about invalid constants in config files.
1511
1512 2005-11-17  Andreas Schwab  <schwab@suse.de>
1513         reviewed by: plam
1514         
1515         * src/fccache.c (FcGlobalCacheSave): 
1516
1517         Don't add current_arch_start more than once.
1518
1519 2005-11-16  Patrick Lam  <plam@mit.edu>
1520         * src/fccharset.c (FcCharSetDistributeBytes, FcCharSetUnserialize):
1521         * src/fcfs.c (FcFontSetUnserialize):
1522         * src/fcname.c (FcObjectDistributeBytes, FcObjectUnserialize):
1523         * src/fcpat.c (FcStrUnserialize):
1524
1525         Fix ordering of ALIGN with respect to saving block_ptr; add
1526         another ALIGN to fcfs.c.
1527
1528 2005-11-16  Patrick Lam  <plam@mit.edu>
1529         * src/fccache.c (FcDirCacheProduce)
1530         
1531         Fix case where alignment bytes bumped up metadata->count
1532         causing unwarranted failures to write cache files.  
1533         (Reported by Stephan Kulow).
1534
1535 2005-11-16  Patrick Lam  <plam@mit.edu>
1536         * src/fccache.c (FcDirCacheProduce):
1537         * src/fccharset.c (FcCharSetDistributeBytes):
1538         * src/fcfs.c (FcFontSetDistributeBytes):
1539         * src/fcint.h:
1540         * src/fclang.c (FcLangSetDistributeBytes):
1541         * src/fcname.c (FcObjectDistributeBytes):
1542         * src/fcpat.c (FcPatternNeededBytes, FcValueListNeededBytes,
1543                 FcStrNeededBytes):
1544         
1545         Add *NeededBytesAlign(), which overestimates the padding which is
1546         later added by the new ALIGN macro.  Fix alignment problems on
1547         ia64 and s390 by bumping up block_ptr appropriately.  (Earlier
1548         version by Andreas Schwab).
1549
1550 2005-11-16  Stephan Kulow  <coolo@kde.org>
1551         reviewed by: plam
1552         
1553         * src/fccache.c:
1554
1555         Use sysconf to determine proper PAGESIZE value; this
1556         appears to be POSIX-compliant. (reported by Andreas Schwab)
1557
1558 2005-11-04  Patrick Lam  <plam@mit.edu>
1559         * fc-lang/fc-lang.c:
1560         * src/fccharset.c:
1561         * src/fcint.h:
1562         * src/fclang.c:
1563
1564         Fix bug 2878 (excessive relocations at startup for charsets,
1565         reported by Ross Burton): fc-lang/fc-lang now creates the
1566         static form of the langset, not the dynamic form, so that
1567         the charsets should now be in .rodata.
1568
1569 2005-11-04  Patrick Lam  <plam@mit.edu>
1570         * src/fcdir.c (FcDirScanConfig):
1571
1572         Add test for validity of directory caches that
1573         somehow got lost (reported by make distcheck).
1574
1575 2005-11-04  Patrick Lam  <plam@mit.edu>
1576         * ChangeLog:
1577         * README:
1578         * configure.in:
1579         * fontconfig/fontconfig.h:
1580         
1581         Bump version to 2.3.92.
1582
1583 2005-11-02  Patrick Lam  <plam@mit.edu>
1584         * src/fcpat.c (FcPatternDuplicate):
1585
1586         Fix argument ordering problem in call to FcPatternTransferFullFname.
1587
1588 2005-11-02  Patrick Lam  <plam@mit.edu>
1589         * src/fcfreetype.c (FcFreetypeQuery):
1590         * src/fcpat.c (FcPatternDestroy, FcPatternDuplicate, 
1591                        FcPatternTransferFullFname):
1592
1593         Fix warnings and embarrassing double-free error.
1594
1595 2005-11-02  Zhe Su  <zsu@novell.com>
1596         reviewed by: plam
1597         
1598         * fonts.conf.in:
1599
1600         Change the rule for artificial emboldening in fonts.conf.in.  This
1601         enables the support for artificial emboldening included in cairo.
1602
1603 2005-11-02  Patrick Lam  <plam@mit.edu>
1604         * src/fcpat.c (FcPatternDestroy, FcPatternTransferFullName):
1605
1606         Don't zero out full names for FC_REF_CONSTANT fonts;
1607         also, duplicate full names when transferring, and free
1608         full names when freeing the associated font.
1609         Reported by Jinghua Luo.
1610
1611 2005-11-02  Patrick Lam  <plam@mit.edu>
1612         * fc-cache/fc-cache.c (scanDirs):
1613         * src/fcpat.c (FcValueListSerialize):
1614
1615         Revert the previous patch and commit the correct patch:
1616         I forgot a canonicalization in FcValueListSerialize, so
1617         that it would choke on already-serialized input files.  Duh!
1618
1619 2005-11-02  Patrick Lam  <plam@mit.edu>
1620         * fc-cache/fc-cache.c (scanDirs):
1621
1622         Forcibly rescan a directory before writing a fresh local
1623         cache file for that directory, fixing the losing-fonts
1624         problem reported by Mike Fabian and also apparently the 
1625         font cache file corruption.
1626
1627 2005-11-02  Patrick Lam  <plam@mit.edu>
1628         * src/fccache.c (FcGlobalCacheLoad):
1629
1630         Fix thinko: actually, the whole global cache is stale 
1631         if the global cache is older than the (newest) config file.
1632
1633 2005-11-02  Patrick Lam  <plam@mit.edu>
1634         * src/fccache.c (FcGlobalCacheLoad):
1635         * src/fccfg.c (FcConfigModifiedTime, FcConfigBuildFonts):
1636         * src/fcint.h:
1637
1638         Declare the global cache of a directory's contents to be stale if
1639         the directory is newer than the (newest) configuration file.
1640
1641 2005-10-31  Patrick Lam  <plam@mit.edu>
1642         * src/fcint.h:
1643         * src/fclist.c (FcListAppend):
1644         * src/fcmatch.c (FcFontRenderPrepare):
1645         * src/fcpat.c (FcPatternTransferFullFname, FcPatternDuplicate,
1646                        FcPatternFreeze, FcPatternBaseFreeze):
1647
1648         Copy the full pathname whenever duplicating an FcPattern; otherwise,
1649         applications continue breaking.
1650
1651 2005-10-31  Patrick Lam  <plam@mit.edu>
1652         * fc-cat/fc-cat.c (FcCacheFileRead, main):
1653         * src/fcfreetype.c (FcFreeTypeQuery):
1654
1655         Fix small memory error (tried to free argv); use basename and
1656         dirname correctly (they can modify their arguments).
1657
1658 2005-10-31  Patrick Lam  <plam@mit.edu>
1659         * fc-cat/fc-cat.c:
1660         * src/fccache.c:
1661         * src/fcfreetype.c:
1662         * src/fcint.h:
1663         * src/fclist.c:
1664         * src/fcpat.c:
1665
1666         Reinstate basename patch, but keep a hash table linking FcPatterns
1667         to their fully-qualified font names for clients' benefit.  Clients
1668         only pay for the font names once they request the FC_FILE property
1669         from an FcPattern, but the font name is malloc'd at that point (i.e.
1670         not mmapped: that's impossible, since it may vary between machines.)
1671         Clients do have to pay for a copy of the path name per cache file.
1672
1673         Note that FcPatternGetString now does some rewriting if you ask
1674         for an FC_FILE, appending the pathname as appropriate.
1675         
1676 2005-10-31  Patrick Lam  <plam@mit.edu>
1677         * src/fcfreetype.c (FcFreeTypeQuery):
1678
1679         Revert basename patch, which breaks fontconfig clients on my system.
1680
1681 2005-10-25  Jinghua Luo  <sunmoon1997@gmail.com>
1682         reviewed by: plam
1683
1684         * fontconfig/fonts.conf.in:
1685         * fontconfig/fontconfig.h:
1686         * src/fcdefault.c:
1687         * src/fcname.c:
1688
1689         Add FC_EMBEDDED_BITMAP object type to tell Xft/Cairo whether
1690         to load embedded bitmaps or not.
1691
1692 2005-10-25  Patrick Lam  <plam@mit.edu>
1693         * src/fcfreetype.c (FcFreeTypeQuery):
1694
1695         Only add basename to patterns' FC_FILE element, not any part of
1696         the dirname.
1697
1698 2005-10-22  Patrick Lam  <plam@mit.edu>
1699         * src/fcfreetype.c:
1700
1701         Add some more consts, fixing more GCC4 warnings.
1702
1703 2005-10-22  Zhe Su  <zsu@novell.com>
1704         reviewed by: plam
1705
1706         Support localized font family and style names.
1707         This has been reported to break old apps like xfd, but modern
1708         (gtk+/qt/mozilla) apps work fine.
1709
1710 2005-10-21  Patrick Lam  <plam@mit.edu>
1711         * src/fccache.c (FcGlobalCacheLoad):
1712
1713         Destroy the global cache file if it's terminally broken.  (reported by
1714         Mike Fabian)
1715
1716 2005-10-21  Patrick Lam  <plam@mit.edu>
1717         * fc-list/fc-list.c (main):
1718         * src/fcname.c (FcNameUnparse, FcNameUnparseEscaped):
1719         * fontconfig/fontconfig.h:
1720
1721         Prevent fc-list from escaping strings when printing them (reported by
1722         Matthias Clasen).
1723
1724 2005-10-20  Marcus Meissner  <meissner@suse.de>
1725         reviewed by: plam
1726
1727         * fontconfig/fontconfig.h:
1728
1729         Add valist sentinel markup for FcObjectSetBuild and FcPatternBuild.
1730         
1731 2005-10-14  Ross Burton  <ross@burtonini.com>
1732         reviewed by: plam
1733
1734         * fc-glyphname/fc-glyphname.c:
1735         * src/fclang.c:
1736
1737         Add consts to variables so as to move arrays into .rodata.
1738
1739 2005-10-14  Mike Fabian  <mfabian@suse.de>
1740         reviewed by: plam
1741
1742         * src/fccache.c (FcDirCacheUnlink):
1743
1744         Check existence of directory cache file before attempting to unlink.
1745
1746 2005-10-13  Patrick Lam  <plam@mit.edu>
1747         * src/fccache.c (FcDirCacheUnlink):
1748
1749         Fix flipped return value on unlink.  (Reported by Mike Fabian)
1750
1751 2005-10-12  Patrick Lam  <plam@mit.edu>
1752
1753         * src/fccache.c:
1754         * src/fcdir.c (FcDirScanConfig):
1755         * src/fcint.h:
1756
1757         When fc-cache is run without --force, use directory cache files
1758         to speed up fc-cache run time.  (Reported by Mike Fabian)
1759
1760 2005-10-06  Patrick Lam  <plam@mit.edu>
1761
1762         * src/fcname.c (FcObjectToPtr):
1763         * src/fcpat.c (FcStrStaticName):
1764
1765         Add padding to make valgrind and glibc not hate each other
1766         when calling strlen().
1767
1768 2005-10-05  Simos Xenitellis  <simos74@gmx.net>
1769         reviewed by: plam & keithp
1770
1771         * fonts.conf.in:
1772
1773         Modify config file to use Greek fonts before Asian fonts with
1774         Greek glyphs.
1775
1776 2005-10-05  Christian Biesinger  <cbiesinger@web.de>
1777         reviewed by: plam & keithp
1778
1779         * src/Makefile.am:
1780
1781         Use libtool -no-undefined flag on all platforms.
1782
1783 2005-10-05  Patrick Lam  <plam@mit.edu>
1784         * src/fccache.c (FcCacheHaveBank):
1785
1786         Implement move-to-front array for banks (perf regression
1787         reported by Ronny V. Vindenes).
1788
1789 2005-10-04  Patrick Lam  <plam@mit.edu>
1790         * src/fccache.c (FcDirCacheValid, FcDirCacheUnlink, 
1791                          FcDirCacheHasCurrentArch):
1792         * fc-cache/fc-cache.c (scanDirs):
1793         * fontconfig/fontconfig.h:
1794
1795         Add new API which unlinks directory caches and checks dir caches
1796         for existence of appropriate sections.  Fix fc-cache to unlink
1797         stale cache files and save directory caches that lack relevant
1798         sections.
1799
1800 2005-10-03  Patrick Lam  <plam@mit.edu>
1801         * src/fccache.c (FcDirCacheValid):
1802
1803         Ensure that a directory cache has the appropriate section
1804         before reporting that it is valid (reported by Matthias Clasen).
1805
1806 2005-09-29  Mathias Hasselmann  <mathias.hasselmann@gmx.de>
1807
1808         reviewed by: plam
1809         
1810         * configure.in:
1811         * src/Makefile.am:
1812         * src/fcxml.c:
1813
1814         Use libxml2 if requested (with --enable-libxml2) or if
1815         expat is not available.
1816
1817 2005-09-29  Patrick Lam  <plam@mit.edu>
1818         * src/fccache.c (FcGlobalCacheSave, FcDirCacheWrite):
1819
1820         Fix multi-arch cache files: compute the position for the
1821         block to be added using info from OrigFile, not NewFile.
1822
1823 2005-09-28  Patrick Lam  <plam@mit.edu>
1824         * src/fccache.c (FcCacheMachineSignature):
1825
1826         Cast results of sizeof() to unsigned int to get rid of
1827         warnings on x86_64 (thanks Matthias Clasen).
1828
1829 2005-09-27  Patrick Lam  <plam@mit.edu>
1830         * src/fccache.c (FcGlobalCacheSave, FcCacheCopyOld,
1831                 FcDirCacheWrite):
1832
1833         Use FcAtomic to rewrite cache files.
1834
1835 2005-09-27  Patrick Lam  <plam@mit.edu>
1836
1837         * src/fccache.c (FcDirCacheWrite):
1838
1839         Don't unlink the fonts.cache-2 file even if there's no data
1840         to write; just write an empty cache file.  (thanks Lubos Lunak)
1841
1842 2005-09-27  Patrick Lam  <plam@mit.edu>
1843
1844         * src/fccache.c (FcDirCacheWrite):
1845
1846         Allocate room for the subdirectory names in each
1847         directory cache.  Thanks to James Cloos for finding
1848         and diagnosing this bug!
1849
1850 2005-09-22  Patrick Lam  <plam@mit.edu>
1851
1852         * fc-cache/fc-cache.sgml:
1853         * src/fccache.c (FcDirCacheWrite):
1854         * src/fccache.h (struct FcCache):
1855
1856         Update documentation -- fc-cache's man page now says that you
1857         need to run fc-cache once per cached architecture; add some
1858         documentation to the FcCache structure.
1859
1860         Make fc-cache write out fonts.cache-2 files for directories with
1861         no fonts (i.e. only subdirectories).
1862         
1863 2005-09-22  Patrick Lam    <plam@mit.edu>
1864         * doc/edit-sgml.c:
1865         * fc-cache/fc-cache.sgml:
1866         * fc-case/fc-case.c:
1867         * fc-glyphname/fc-glyphname.c:
1868         * src/fcdefault.c:
1869         * src/fcfreetype.c:
1870         * src/fcinit.c:
1871         * src/fcxml.c:
1872
1873         More GCC 4 cleanups, due to Behhad Esfahbod <behdad@beddad.org>.
1874
1875         * Makefile.am:
1876         * configure.in:
1877         * fc-lang/fc-lang.c:
1878         * fontconfig/fcprivate.h:
1879         * fontconfig/fontconfig.h:
1880         * src/fccache.c:
1881         * src/fccfg.c:
1882         * src/fccharset.c:
1883         * src/fcdbg.c:
1884         * src/fcdir.c:
1885         * src/fcfs.c:
1886         * src/fcint.h:
1887         * src/fclang.c:
1888         * src/fclist.c:
1889         * src/fcmatch.c:
1890         * src/fcname.c:
1891         * src/fcpat.c:
1892
1893         Implement new mmaped cache for font information.
1894         Bump so revision to 2.3.90.
1895
1896 2005-07-25  Keith Packard  <keithp@keithp.com>
1897
1898         * doc/fontconfig-user.sgml:
1899         * fc-glyphname/fc-glyphname.c: (scan), (main):
1900         * fc-lang/fc-lang.c: (FcConfigHome):
1901         * fc-match/fc-match.c: (main):
1902         * src/fccfg.c: (FcConfigHome):
1903         * src/fcfreetype.c: (FcSfntNameTranscode), (FcSfntNameLanguage),
1904         (FcVendorMatch), (FcFreeTypeQuery), (FcFreeTypeCharSetAndSpacing),
1905         (addtag), (FcFontCapabilities):
1906         * src/fcpat.c: (FcValueListEntCreate):
1907         * src/fcstr.c: (FcStrCaseWalkerInit):
1908         * src/fcxml.c: (FcParsePatelt), (FcConfigParseAndLoadDir):
1909
1910         Various GCC 4 cleanups for signed vs unsigned char
1911
1912         Match only [0-9]*.conf files in <include>{directory}</include>
1913         elements to avoid loading *.rpmsave or .dpkg-old files. (otaylor)
1914
1915 2005-07-15  Carl Worth  <cworth@cworth.org>
1916
1917         * src/fcint.h:
1918         * src/fcinit.c: (FcFini):
1919         * src/fcpat.c: (FcPatternFini): Rename FcPatternThawAll to
1920         FcPatternFini.
1921         
1922         * src/fcpat.c: (FcObjectStaticName), (FcObjectStaticNameFini):
1923         Pull the FcObjectStateName hash table out to file scope, and add
1924         FcObjectStaticNameFini so that FcFini will cleanup this hash table
1925         as well.
1926
1927         * src/fcxml.c: (FcConfigParseAndLoad): Clear FILE* to NULL after
1928         fclose.
1929
1930 2005-06-16  Patrick Lam <plam@MIT.EDU>
1931
1932         reviewed by: keithp
1933
1934         * src/fccfg.c: (FcConfigCompareValue):
1935         Make FcOpNotContains use FcStrStr for strings so that
1936         it matches semantics for !FcOpContains.
1937
1938 2005-05-20  Keith Packard  <keithp@keithp.com>
1939
1940         * debian/changelog:
1941         * debian/control:
1942         Move fontconfig source package to libs as per override
1943
1944 2005-05-20  Aiet Kolkhi <aietkolkhi@gmail.com>
1945
1946         reviewed by: Mike Fabian
1947
1948         * fc-lang/ka.orth:
1949         The ka.orth file requires several characters which are not 
1950         used anymore in modern Georgian and which are missing in the free 
1951         Georgian TrueType fonts downloadable at: 
1952         
1953         http://aiet.qartuli.net/docs/georgian_on_linux_en.php
1954
1955 2005-04-27  Keith Packard  <keithp@keithp.com>
1956
1957         * README:
1958         * debian/changelog:
1959         Update date to real 2.3.2 release date.
1960         Fix change attributions
1961         
1962 2005-04-27  Keith Packard  <keithp@keithp.com>
1963
1964         * configure.in:
1965         Bump so revision for 2.3.2
1966         * fc-cache/fc-cache.c: (scanDirs):
1967         Fix a few minor leaks in error cases.
1968
1969 2005-04-23  Keith Packard  <keithp@keithp.com>
1970
1971         * README:
1972         * configure.in:
1973         * debian/changelog:
1974         * fontconfig/fontconfig.h:
1975         Update for version 2.3.2
1976
1977 2005-04-21  Keith Packard  <keithp@keithp.com>
1978
1979         * debian/fontconfig.postinst:
1980         Don't force bitmap font enable in default
1981         configuration; allows users to override this in
1982         ~/.fonts.conf
1983         * debian/po/cs.po:
1984         * debian/po/da.po:
1985         * debian/po/de.po:
1986         * debian/po/es.po:
1987         * debian/po/fr.po:
1988         * debian/po/ja.po:
1989         * debian/po/nl.po:
1990         * debian/po/pt.po:
1991         * debian/po/pt_BR.po:
1992         * debian/po/templates.pot:
1993         * debian/po/tr.po:
1994         * debian/po/zh_CN.po:
1995         Updated translations
1996         
1997         * fc-cache/fc-cache.c: (main):
1998         Destroy font configuration on exit to help valgrind
1999         
2000         * fonts.conf.in:
2001         * src/fcfreetype.c: (FcSfntNameTranscode), (FcFreeTypeCharIndex),
2002         (FcFreeTypeCheckGlyph):
2003         Use own transcoding routines in preference to iconv
2004         which appears to have leaks in some translators.
2005         Call iconv_close after using iconv (oops).
2006         
2007         Prefer unicode encoding of Euro char as some
2008         fonts mis-encode Euro in other ones.
2009
2010         Must fetch bitmap glyphs to get width values
2011         to check for monospace/dual-width fonts.
2012
2013 2005-04-13  Ross Burton  <ross@burtonini.com>
2014
2015         * src/fcpat.c:
2016         Check that a pattern isn't already frozen in FcPatternFreeze.
2017
2018 2005-03-31  Ross Burton  <ross@burtonini.com>
2019
2020         * src/fclist.c:
2021         * src/fcmatch.c:
2022         * src/fcpat.c:
2023         Run all FcPattern objects through FcObjectStaticName, so that
2024         compares can be done on pointers instead of strings (#2659)
2025
2026 2005-03-17  Tor Lillqvist  <tml@novell.com>
2027
2028         * src/fontconfig.def.in: Add the .dll to the dll name.
2029
2030 2005-03-10  Keith Packard  <keithp@keithp.com>
2031
2032         * debian/README.Debian:
2033         Update to reflect configuration changes
2034         * debian/changelog:
2035         * debian/fontconfig.postinst:
2036         Fix Autohint vs Autohinter mistake
2037         * debian/fontconfig.templates:
2038         Adopt changes from Josselin Mouette for configuration descriptions
2039         Update debian to version 2.3.1-2
2040
2041 2005-03-08  Keith Packard  <keithp@keithp.com>
2042
2043         * debian/changelog:
2044         * debian/rules:
2045         Update debian for 2.3.1
2046
2047 2005-03-09  Tor Lillqvist  <tml@novell.com>
2048
2049         * fontconfig-zip.in: Get the DLL from "bin" where modern libtools
2050         put it, not "lib".
2051
2052         * src/fccfg.c (FcConfigFileExists): Check also drive letter
2053         prefix on Win32.
2054
2055 2005-03-08  Keith Packard  <keithp@keithp.com>
2056
2057         * README:
2058         * configure.in:
2059         * fontconfig/fontconfig.h:
2060         Update for 2.3.1
2061
2062 2005-03-05  Keith Packard  <keithp@keithp.com>
2063
2064         * src/fcfreetype.c: (addtag), (FcFontCapabilities):
2065         Include space and remove numbers from valid script tags.
2066         This ensures that tags like 'lao ' work while rejecting
2067         those which have any digits.
2068         Eliminate a spurious debugging variable (len)
2069
2070 2005-03-05  Keith Packard  <keithp@keithp.com>
2071
2072         * src/fcfreetype.c: (addtag), (GetScriptTags),
2073         (FcFontCapabilities):
2074         Rework GSUB/GPOS script parsing to survive broken fonts.
2075         Thanks for the broken font go to Manish Singh
2076
2077 2005-03-05  Keith Packard  <keithp@keithp.com>
2078
2079         Josselin Mouette:
2080         * debian/changelog:
2081         * debian/control:
2082         * debian/fontconfig.config:
2083         * debian/fontconfig.templates:
2084         * debian/rules:
2085                 Include 2.3 release information in changelog
2086                 Add Josselin Mouette as an Uploader
2087                 Set hinting_type to low priority configuration option
2088                 
2089         Manish Singh:
2090         * debian/fontconfig.postinst:
2091                 yes_bitmaps.conf -> yes-bitmaps.conf
2092                 
2093         Funda Wang:
2094         * src/fcfreetype.c:
2095                 Johap -> Johab
2096                 
2097 2005-03-02  Keith Packard  <keithp@keithp.com>
2098
2099         * Makefile.am:
2100         * conf.d/Makefile.am:
2101         * conf.d/autohint.conf:
2102         * conf.d/no-sub-pixel.conf:
2103         * conf.d/sub-pixel.conf:
2104         * conf.d/unhinted.conf:
2105         * debian/autohint.conf:
2106         * debian/fontconfig.install:
2107         * debian/fontconfig.postinst:
2108         * debian/fontconfig.templates:
2109         * debian/no-sub-pixel.conf:
2110         * debian/unhinted.conf:
2111         Move debian-specific conf file examples upstream.
2112         
2113         Sub-pixel configuration examples must smash subpixel value
2114         as Xft always sets it from X.
2115
2116         Change sub-pixel rendering debconf descriptions from
2117         Enable/Disable to Always/Never.
2118
2119 2005-03-02  Keith Packard  <keithp@keithp.com>
2120
2121         * .cvsignore:
2122         * conf.d/.cvsignore:
2123         * doc/.cvsignore:
2124         Ignore more build detritus
2125
2126         * Makefile.am:
2127         Add debian package construction stuff.
2128         
2129         * config/config.guess:
2130         * config/config.sub:
2131         Update to newer versions of these tools
2132         
2133         * doc/Makefile.am:
2134         Get library manuals to build again (we love automake).
2135         
2136         * debian/README.Debian:
2137         * debian/autohint.conf:
2138         * debian/changelog:
2139         * debian/compat:
2140         * debian/control:
2141         * debian/copyright:
2142         * debian/fontconfig-udeb.install:
2143         * debian/fontconfig.config:
2144         * debian/fontconfig.defoma:
2145         * debian/fontconfig.dirs:
2146         * debian/fontconfig.install:
2147         * debian/fontconfig.postinst:
2148         * debian/fontconfig.postrm:
2149         * debian/fontconfig.templates:
2150         * debian/libfontconfig1-dev.install:
2151         * debian/libfontconfig1.install:
2152         * debian/local.conf.md5sum:
2153         * debian/no-sub-pixel.conf:
2154         * debian/po/POTFILES.in:
2155         * debian/po/cs.po:
2156         * debian/po/da.po:
2157         * debian/po/de.po:
2158         * debian/po/es.po:
2159         * debian/po/fr.po:
2160         * debian/po/ja.po:
2161         * debian/po/nl.po:
2162         * debian/po/pt.po:
2163         * debian/po/pt_BR.po:
2164         * debian/po/templates.pot:
2165         * debian/po/tr.po:
2166         * debian/po/zh_CN.po:
2167         * debian/rules:
2168         * debian/unhinted.conf:
2169         Update debian build system to switch maintainers and
2170         deal with 2.3 functionality
2171
2172 2005-03-01  Keith Packard  <keithp@keithp.com>
2173
2174         * README:
2175         * configure.in:
2176         * fontconfig/fontconfig.h:
2177         Update for 2.3.0
2178
2179 2005-03-01  Keith Packard  <keithp@keithp.com>
2180
2181         * doc/Makefile.am:
2182         Generate and install PDF versions of the manuals
2183
2184         * doc/fcpattern.fncs:
2185         Fix formatting
2186         
2187         * doc/fcstring.fncs:
2188         Add missing exported functions, fix data types
2189         
2190         * doc/fontconfig-devel.sgml:
2191         Add missing pattern elements.
2192         
2193         * doc/fontconfig-user.sgml:
2194         Add missing pattern elements.  Document conf.d usage,
2195         clarify available orthography list.  Fix some config file
2196         attributes.  Complete list of constants.
2197         
2198         * fontconfig/fontconfig.h:
2199         Mark FC_SOURCE deprecated.
2200         
2201         * src/fcfreetype.c: (FcFreeTypeQuery):
2202         Don't set FC_SOURCE any longer.
2203
2204 2005-02-28  Keith Packard  <keithp@keithp.com>
2205
2206         * Makefile.am:
2207         * conf.d/Makefile.am:
2208         * conf.d/README:
2209         * conf.d/no-bitmaps.conf:
2210         * conf.d/sub-pixel.conf:
2211         * conf.d/yes-bitmaps.conf:
2212         * configure.in:
2213         Create prototype /etc/fonts/conf.d directory with a few
2214         sample configuration files.
2215         Deprecate use of local.conf for local customizations in favor of
2216         this directory based scheme which is more easily integrated into
2217         installation systems.
2218         
2219         * src/fcname.c:
2220         Tag FC_EMBOLDEN as a boolean variable
2221
2222 2005-02-10  Keith Packard  <keithp@keithp.com>
2223
2224         reviewed by: pborelli@katamail.com
2225
2226         * src/fcdir.c: (FcFileScanConfig):
2227         Free patterns from fonts which are rejected by configuration
2228         (bug #2518)
2229
2230 2005-01-28  Keith Packard  <keithp@keithp.com>
2231
2232         * README:
2233         * configure.in:
2234         * fontconfig/fontconfig.h:
2235         Update for version 2.2.99
2236
2237 2005-01-28  Keith Packard  <keithp@keithp.com>
2238
2239         * README:
2240         Add a few pointers (#2284, #2285)
2241
2242 2005-01-28  Keith Packard  <keithp@keithp.com>
2243
2244         * src/fcint.h:
2245         * src/fcname.c: (FcNameBool):
2246         * src/fcxml.c: (FcTypeName), (FcTypecheckValue), (FcTypecheckExpr),
2247         (FcTestCreate), (FcEditCreate), (FcConfigLexBool), (FcParseBool),
2248         (FcParseAlias), (FcParseInclude), (FcParseTest), (FcParseEdit):
2249         Polite typechecking for test and edit expressions.  Helps
2250         catch errors in the font configuration. (bug 229)
2251
2252 2005-01-15  Alan Coopersmith <alan.coopersmith@sun.com>
2253
2254         reviewed by: Keith Packard <keithp@keithp.com>
2255
2256         * configure.in:
2257         Have --with-expat set EXPAT_CFLAGS (bug 2278)
2258
2259 2005-01-13  Keith Packard  <keithp@keithp.com>
2260
2261         * doc/fontconfig-user.sgml:
2262         Add SEE ALSO section (bug 2085)
2263         
2264 2005-01-13  J. Ali Harlow <ali@juiblex.co.uk>
2265
2266         reviewed by: Keith Packard  <keithp@keithp.com>
2267
2268         * Makefile.am:
2269         * configure.in:
2270         * doc/Makefile.am:
2271         * fc-case/Makefile.am:
2272         * fc-glyphname/Makefile.am:
2273         * fc-lang/Makefile.am:
2274         * src/fontconfig.def.in:
2275         Cross compiling fixes (bug 280)
2276
2277 2005-01-13  Keith Packard  <keithp@keithp.com>
2278
2279         * fonts.conf.in:
2280         Update blanks list (Closes bug 86)
2281
2282 2005-01-04  Keith Packard  <keithp@keithp.com>
2283
2284         * src/fccache.c: (FcCacheFontSetAdd):
2285         Verify that every font pattern loaded from cache has
2286         both FC_FILE and FC_FAMILY entries.
2287         Attempt to fix bug #2219.
2288
2289 2004-12-29  Keith Packard  <keithp@keithp.com>
2290
2291         * README:
2292         * configure.in:
2293         * fontconfig/fontconfig.h:
2294         Update for version 2.2.98
2295
2296 2004-12-29  Keith Packard  <keithp@keithp.com>
2297
2298         * fontconfig/fontconfig.h:
2299         Document ASCII limitations of Fc character conversion macros
2300         * src/fcstr.c: (FcStrCaseWalkerLong), (FcStrDowncase):
2301         Fix off-by-one error in utf-8 case walking code.
2302         Add FcStrDowncase (useful for testing case conversion functions)
2303
2304 2004-12-29  Keith Packard  <keithp@keithp.com>
2305
2306         * .cvsignore:
2307         * fc-case/.cvsignore:
2308         clean up CVS ignore lists
2309         * fc-lang/iso-3166.txt:
2310         Add territory database
2311         
2312 2004-12-29   Tor Andersson <tor.andersson@gmail.com>
2313
2314         Reviewed by: Keith Packard
2315         
2316         * fc-lang/ko.orth:
2317         Remove Han characters from Korean orthography
2318
2319 2004-12-29  Keith Packard  <keithp@keithp.com>
2320
2321         * Makefile.am:
2322         Reorder utility programs to make sure fc-case is run before fc-lang
2323         as fc-lang uses fcstr.c which uses fccase.h
2324         * fonts.conf.in:
2325         Fix broken XML
2326
2327 2004-12-29  Keith Packard  <keithp@keithp.com>
2328
2329         * fonts.conf.in:
2330         Adopt some RedHat suggestions for standard font configuration.
2331
2332         * Makefile.am:
2333         * configure.in:
2334         * fc-case/CaseFolding.txt:
2335         * fc-case/Makefile.am:
2336         * fc-case/fc-case.c: (panic), (addFold), (ucs4_to_utf8),
2337         (utf8_size), (addChar), (foldExtends), (case_fold_method_name),
2338         (dump), (parseRaw), (caseFoldReadRaw), (main):
2339         * fc-case/fccase.tmpl.h:
2340         Add new helper program 'fc-case' to construct case folding
2341         tables from standard Unicode CaseFolding.txt file
2342         
2343         * src/fcint.h:
2344         * src/fclist.c: (FcListValueHash):
2345         * src/fcstr.c: (FcStrCaseWalkerInit), (FcStrCaseWalkerLong),
2346         (FcStrCaseWalkerNext), (FcStrCaseWalkerNextIgnoreBlanks),
2347         (FcStrCmpIgnoreCase), (FcStrCmpIgnoreBlanksAndCase),
2348         (FcStrHashIgnoreCase), (FcStrIsAtIgnoreBlanksAndCase),
2349         (FcStrIsAtIgnoreCase), (FcStrStrIgnoreCase):
2350         Re-implement case insensitive functions with Unicode
2351         aware versions (including full case folding mappings)
2352
2353 2004-12-13  Keith Packard  <keithp@keithp.com>
2354
2355         reviewed by: Owen Taylor <otaylor@redhat.com>
2356
2357         * src/fcmatch.c: (FcFontSetSort):
2358         I changed FcFontSetSort to respect the generic aliases better
2359         in the face of language matching.
2360         
2361         What I did was to ammend the strict sort order used by FcFontSort so
2362         that it 'satisfies' the language specified in the pattern by locating
2363         the best matching font supporting each pattern language and then
2364         ignores language in the remaining fonts for purposes of matching.
2365
2366         So, when asking for 'sans:lang=en', you'll get an English font first,
2367         and then the remaining fonts sorted with respect to the 'sans' alias
2368         alone -- pushing Kochi fonts ahead of other English-supporting Han fonts.
2369
2370 2004-12-10  Jakub Pavelek <jakub.pavelek@nokia.com>
2371
2372         reviewed by: Keith Packard  <keithp@keithp.com>
2373
2374         * fontconfig/fontconfig.h:
2375         * fonts.conf.in:
2376
2377         Configuration changes to request synthetic emboldening of
2378         fonts.  The actual emboldening code will live in Xft.
2379
2380 2004-12-09  John Thacker <thacker@math.cornell.edu>
2381
2382         reviewed by: Keith Packard  <keithp@keithp.com>
2383
2384         * fc-lang/ru.orth:
2385         
2386         Currently Russian (ru) requires 0406 and 0456 (І and Ñ–), but these
2387         were eliminated in Russian in 1918 in favor of 0418 and 0438 (И and
2388         Ð¸), and don't even appear in KOI8-R.  (The hypothesis that they
2389         don't appear in KOI8-R due to their similarity with Latin I and i is
2390         eliminated by their presence in KOI8-U.)  I have a couple of fonts
2391         with Russian support that don't have the letter.
2392
2393         Therefore, 0406 and 0456 should be removed from or commented out of
2394         ru.orth
2395
2396 2004-12-06  michael meeks <mmeeks@novell.com>
2397
2398         Reviewed by: Keith Packard  <keithp@keithp.com>
2399
2400         * src/fcinit.c: (FcMemReport):
2401         * src/fcint.h:
2402         * src/fclist.c: (FcObjectSetAdd):
2403         * src/fcpat.c: (FcValueListEntCreate), (FcPatternBaseFreeze),
2404         (FcPatternInsertElt), (FcPatternEqual), (FcObjectStaticName):
2405         * src/fcxml.c: (FcParsePatelt):
2406         memoize strings and share a single copy for all uses.  Note that
2407         this could be improved further by using statically allocated blocks
2408         and gluing multiple strings together, but I'm basically lazy.
2409         In my environment with 800 font files, I get a savings of about 90KB.
2410
2411 2004-12-06  Keith Packard  <keithp@keithp.com>
2412
2413         * COPYING:
2414         * Makefile.am:
2415         * config/Makedefs.in:
2416         * configure.in:
2417         * doc/edit-sgml.c:
2418         * doc/fcatomic.fncs:
2419         * doc/fcblanks.fncs:
2420         * doc/fccharset.fncs:
2421         * doc/fcconfig.fncs:
2422         * doc/fcconstant.fncs:
2423         * doc/fcfile.fncs:
2424         * doc/fcfontset.fncs:
2425         * doc/fcfreetype.fncs:
2426         * doc/fcinit.fncs:
2427         * doc/fcmatrix.fncs:
2428         * doc/fcobjectset.fncs:
2429         * doc/fcobjecttype.fncs:
2430         * doc/fcpattern.fncs:
2431         * doc/fcstring.fncs:
2432         * doc/fcstrset.fncs:
2433         * doc/fcvalue.fncs:
2434         * doc/fontconfig-devel.sgml:
2435         * doc/fontconfig-user.sgml:
2436         * doc/func.sgml:
2437         * doc/version.sgml.in:
2438         * fc-cache/Makefile.am:
2439         * fc-cache/fc-cache.c:
2440         * fc-glyphname/Makefile.am:
2441         * fc-glyphname/fc-glyphname.c:
2442         * fc-glyphname/fcglyphname.tmpl.h:
2443         * fc-lang/Makefile.am:
2444         * fc-lang/aa.orth:
2445         * fc-lang/ab.orth:
2446         * fc-lang/af.orth:
2447         * fc-lang/am.orth:
2448         * fc-lang/ar.orth:
2449         * fc-lang/ast.orth:
2450         * fc-lang/ava.orth:
2451         * fc-lang/ay.orth:
2452         * fc-lang/az.orth:
2453         * fc-lang/az_ir.orth:
2454         * fc-lang/ba.orth:
2455         * fc-lang/bam.orth:
2456         * fc-lang/be.orth:
2457         * fc-lang/bg.orth:
2458         * fc-lang/bh.orth:
2459         * fc-lang/bho.orth:
2460         * fc-lang/bi.orth:
2461         * fc-lang/bin.orth:
2462         * fc-lang/bn.orth:
2463         * fc-lang/bo.orth:
2464         * fc-lang/br.orth:
2465         * fc-lang/bs.orth:
2466         * fc-lang/bua.orth:
2467         * fc-lang/ca.orth:
2468         * fc-lang/ce.orth:
2469         * fc-lang/ch.orth:
2470         * fc-lang/chm.orth:
2471         * fc-lang/chr.orth:
2472         * fc-lang/co.orth:
2473         * fc-lang/cs.orth:
2474         * fc-lang/cu.orth:
2475         * fc-lang/cv.orth:
2476         * fc-lang/cy.orth:
2477         * fc-lang/da.orth:
2478         * fc-lang/de.orth:
2479         * fc-lang/dz.orth:
2480         * fc-lang/el.orth:
2481         * fc-lang/en.orth:
2482         * fc-lang/eo.orth:
2483         * fc-lang/es.orth:
2484         * fc-lang/et.orth:
2485         * fc-lang/eu.orth:
2486         * fc-lang/fa.orth:
2487         * fc-lang/fc-lang.c:
2488         * fc-lang/fc-lang.man:
2489         * fc-lang/fclang.tmpl.h:
2490         * fc-lang/fi.orth:
2491         * fc-lang/fj.orth:
2492         * fc-lang/fo.orth:
2493         * fc-lang/fr.orth:
2494         * fc-lang/ful.orth:
2495         * fc-lang/fur.orth:
2496         * fc-lang/fy.orth:
2497         * fc-lang/ga.orth:
2498         * fc-lang/gd.orth:
2499         * fc-lang/gez.orth:
2500         * fc-lang/gl.orth:
2501         * fc-lang/gn.orth:
2502         * fc-lang/gu.orth:
2503         * fc-lang/gv.orth:
2504         * fc-lang/ha.orth:
2505         * fc-lang/haw.orth:
2506         * fc-lang/he.orth:
2507         * fc-lang/hi.orth:
2508         * fc-lang/ho.orth:
2509         * fc-lang/hr.orth:
2510         * fc-lang/hu.orth:
2511         * fc-lang/hy.orth:
2512         * fc-lang/ia.orth:
2513         * fc-lang/ibo.orth:
2514         * fc-lang/id.orth:
2515         * fc-lang/ie.orth:
2516         * fc-lang/ik.orth:
2517         * fc-lang/io.orth:
2518         * fc-lang/is.orth:
2519         * fc-lang/iso639-2:
2520         * fc-lang/it.orth:
2521         * fc-lang/iu.orth:
2522         * fc-lang/ja.orth:
2523         * fc-lang/ka.orth:
2524         * fc-lang/kaa.orth:
2525         * fc-lang/ki.orth:
2526         * fc-lang/kk.orth:
2527         * fc-lang/kl.orth:
2528         * fc-lang/km.orth:
2529         * fc-lang/kn.orth:
2530         * fc-lang/ko.orth:
2531         * fc-lang/kok.orth:
2532         * fc-lang/ks.orth:
2533         * fc-lang/ku.orth:
2534         * fc-lang/ku_ir.orth:
2535         * fc-lang/kum.orth:
2536         * fc-lang/kv.orth:
2537         * fc-lang/kw.orth:
2538         * fc-lang/ky.orth:
2539         * fc-lang/la.orth:
2540         * fc-lang/lb.orth:
2541         * fc-lang/lez.orth:
2542         * fc-lang/lo.orth:
2543         * fc-lang/lt.orth:
2544         * fc-lang/lv.orth:
2545         * fc-lang/mg.orth:
2546         * fc-lang/mh.orth:
2547         * fc-lang/mi.orth:
2548         * fc-lang/mk.orth:
2549         * fc-lang/ml.orth:
2550         * fc-lang/mn.orth:
2551         * fc-lang/mo.orth:
2552         * fc-lang/mr.orth:
2553         * fc-lang/mt.orth:
2554         * fc-lang/my.orth:
2555         * fc-lang/nb.orth:
2556         * fc-lang/nds.orth:
2557         * fc-lang/ne.orth:
2558         * fc-lang/nl.orth:
2559         * fc-lang/nn.orth:
2560         * fc-lang/no.orth:
2561         * fc-lang/ny.orth:
2562         * fc-lang/oc.orth:
2563         * fc-lang/om.orth:
2564         * fc-lang/or.orth:
2565         * fc-lang/os.orth:
2566         * fc-lang/pl.orth:
2567         * fc-lang/ps_af.orth:
2568         * fc-lang/ps_pk.orth:
2569         * fc-lang/pt.orth:
2570         * fc-lang/rm.orth:
2571         * fc-lang/ro.orth:
2572         * fc-lang/ru.orth:
2573         * fc-lang/sa.orth:
2574         * fc-lang/sah.orth:
2575         * fc-lang/sco.orth:
2576         * fc-lang/se.orth:
2577         * fc-lang/sel.orth:
2578         * fc-lang/sh.orth:
2579         * fc-lang/si.orth:
2580         * fc-lang/sk.orth:
2581         * fc-lang/sl.orth:
2582         * fc-lang/sm.orth:
2583         * fc-lang/sma.orth:
2584         * fc-lang/smj.orth:
2585         * fc-lang/smn.orth:
2586         * fc-lang/sms.orth:
2587         * fc-lang/so.orth:
2588         * fc-lang/sq.orth:
2589         * fc-lang/sr.orth:
2590         * fc-lang/sv.orth:
2591         * fc-lang/sw.orth:
2592         * fc-lang/syr.orth:
2593         * fc-lang/ta.orth:
2594         * fc-lang/te.orth:
2595         * fc-lang/tg.orth:
2596         * fc-lang/th.orth:
2597         * fc-lang/ti_er.orth:
2598         * fc-lang/ti_et.orth:
2599         * fc-lang/tig.orth:
2600         * fc-lang/tk.orth:
2601         * fc-lang/tl.orth:
2602         * fc-lang/tn.orth:
2603         * fc-lang/to.orth:
2604         * fc-lang/tr.orth:
2605         * fc-lang/ts.orth:
2606         * fc-lang/tt.orth:
2607         * fc-lang/tw.orth:
2608         * fc-lang/tyv.orth:
2609         * fc-lang/ug.orth:
2610         * fc-lang/uk.orth:
2611         * fc-lang/ur.orth:
2612         * fc-lang/uz.orth:
2613         * fc-lang/ven.orth:
2614         * fc-lang/vi.orth:
2615         * fc-lang/vo.orth:
2616         * fc-lang/vot.orth:
2617         * fc-lang/wa.orth:
2618         * fc-lang/wen.orth:
2619         * fc-lang/wo.orth:
2620         * fc-lang/xh.orth:
2621         * fc-lang/yap.orth:
2622         * fc-lang/yi.orth:
2623         * fc-lang/yo.orth:
2624         * fc-lang/zh_cn.orth:
2625         * fc-lang/zh_hk.orth:
2626         * fc-lang/zh_mo.orth:
2627         * fc-lang/zh_sg.orth:
2628         * fc-lang/zh_tw.orth:
2629         * fc-lang/zu.orth:
2630         * fc-list/Makefile.am:
2631         * fc-list/fc-list.c:
2632         * fc-match/Makefile.am:
2633         * fc-match/fc-match.1:
2634         * fc-match/fc-match.c:
2635         * fontconfig/fcfreetype.h:
2636         * fontconfig/fcprivate.h:
2637         * fontconfig/fontconfig.h:
2638         * src/fcatomic.c:
2639         * src/fcblanks.c:
2640         * src/fccache.c:
2641         * src/fccfg.c:
2642         * src/fccharset.c:
2643         * src/fcdbg.c:
2644         * src/fcdefault.c:
2645         * src/fcdir.c:
2646         * src/fcfreetype.c:
2647         * src/fcfs.c:
2648         * src/fcinit.c:
2649         * src/fcint.h:
2650         * src/fclang.c:
2651         * src/fclist.c:
2652         * src/fcmatch.c:
2653         * src/fcmatrix.c:
2654         * src/fcname.c:
2655         * src/fcpat.c:
2656         * src/fcstr.c:
2657         * src/fcxml.c:
2658         Change files from ISO-Latin-1 to UTF-8
2659
2660 2004-12-04  Keith Packard  <keithp@keithp.com>
2661
2662         * INSTALL:
2663         Update links to new freedesktop.org locations
2664         * Makefile.am:
2665         Add uninstall-local to get rid of fonts.conf and local.conf if they
2666         match the distributed versions.  Fixes 'make distcheck'
2667
2668 2004-12-04  Keith Packard  <keithp@keithp.com>
2669
2670         * README:
2671         * configure.in:
2672         * fontconfig/fontconfig.h:
2673         Updates for version 2.2.97
2674
2675 2004-12-04  Owen Taylor  <otaylor@redhat.com>
2676
2677         reviewed by: Keith Packard  <keithp@keithp.com>
2678
2679         * fc-cache/fc-cache.c: (main):
2680         Sleep for two seconds before exiting to make sure timestamps
2681         for future changes have distinct mod times in the file system.
2682         Bug #1982.
2683         * fc-lang/pa.orth:
2684         Add Punjabi orthography.  Bug #1671.
2685
2686 2004-12-04  Keith Packard  <keithp@keithp.com>
2687
2688         * fonts.conf.in:
2689         Just remove the FC_FONTDATE -- it has locale issues and
2690         annoys redhat multi-arch installs.  Now that all X fonts are
2691         included without prejudice, the chances of the date being at
2692         all interesting are rather limited.  Bug #505.
2693         * src/Makefile.am:
2694         Add copyright and license
2695
2696 2004-12-04  Keith Packard  <keithp@keithp.com>
2697
2698         * configure.in:
2699         Change default set of fonts to include all of
2700         /usr/X11R6/lib/X11/fonts (or wherever the X fonts are located).
2701         * doc/fontconfig-user.sgml:
2702         Document new <include>directory-name</include> semantics
2703         * fonts.conf.in:
2704         add <include ignore_missing="yes">conf.d</include>
2705         * local.conf:
2706         Add selectfont to ignore bitmap fonts, add comment for
2707         selectfont which accepts bitmap fonts.
2708         * src/fcdir.c:
2709         * src/fcint.h:
2710         * src/fcxml.c: (FcConfigParseAndLoadDir), (FcConfigParseAndLoad):
2711         Allow <include> configuration elements to reference directories.
2712         Parse and load all files of the form [0-9]* in sorted order.
2713
2714 2004-12-04  Keith Packard  <keithp@keithp.com>
2715
2716         * autogen.sh:
2717         Report command line for $srcdir/configure accurately.
2718         Bug #212.
2719
2720 2004-12-04  Keith Packard  <keithp@keithp.com>
2721
2722         * src/fcfreetype.c: (FcFreeTypeQuery):
2723         Check for non-empty face->family_name and face->style_name
2724         before using those for the font.  Empty names match everything.
2725         Bug #210.
2726
2727 2004-12-04  Keith Packard  <keithp@keithp.com>
2728
2729         * configure.in:
2730         * fontconfig/fontconfig.h:
2731         * src/fcfreetype.c: (FcFreeTypeQuery):
2732         * src/fcname.c:
2733         Create FC_FONTFORMAT from FT_Get_X11_Font_Format function where
2734         available.  This provides font file format information (BDF, Type 1,
2735         PCF, TrueType) for each font.  Closes #109.
2736
2737 2004-12-04  Daniel Glassey <danglassey@ntlworld.com>
2738
2739         reviewed by: Keith Packard  <keithp@keithp.com>
2740
2741         * doc/fontconfig-user.sgml:
2742         Fix typo.
2743         
2744         * fontconfig/fontconfig.h:
2745         * src/fcfreetype.c: (FcFreeTypeQuery), (addtag), (compareulong),
2746         (GetScriptTags), (FcFontCapabilities):
2747         * src/fcname.c:
2748         Add detection for font capabilities (bug #105)
2749
2750 2004-12-04  Keith Packard  <keithp@keithp.com>
2751
2752         * Makefile.am:
2753         Move existing fonts.conf to fonts.conf.bak
2754         
2755         * configure.in:
2756         Add detection of iconv
2757         
2758         * doc/fcpattern.fncs:
2759         * doc/fontconfig-devel.sgml:
2760         * doc/fontconfig-user.sgml:
2761         * fonts.dtd:
2762         Document new selectfont elements
2763         
2764         * fc-lang/nb.orth:
2765         Switch to UTF-8 in comment
2766         
2767         * fontconfig/fontconfig.h:
2768         * src/fcname.c:
2769         Add fullname, and family/style/fullname language entries
2770         
2771         * src/fccache.c: (FcCacheFontSetAdd):
2772         * src/fcdir.c: (FcFileScanConfig):
2773         Respect selectfont/*/glob
2774         
2775         * src/fcint.h:
2776         * src/fccfg.c: (FcConfigCreate), (FcConfigDestroy),
2777         (FcConfigCompareValue), (FcConfigPatternsAdd),
2778         (FcConfigPatternsMatch), (FcConfigAcceptFont):
2779         * src/fcxml.c: (FcElementMap), (FcVStackDestroy),
2780         (FcVStackPushPattern), (FcPopExpr), (FcParseAcceptRejectFont),
2781         (FcPopValue), (FcParsePatelt), (FcParsePattern), (FcEndElement):
2782         Add support for selectfont
2783         
2784         * src/fcfreetype.c: (FcSfntNameTranscode), (FcSfntNameLanguage),
2785         (FcStringInPatternElement), (FcFreeTypeQuery):
2786         Add multi-lingual family/style/fullname support
2787         
2788         * src/fclist.c: (FcListPatternMatchAny):
2789         Expose FcListPatternMatchAny (which selectfont/*/pattern uses)
2790         
2791         * src/fcpat.c: (FcPatternRemove), (FcPatternAppend),
2792         (FcObjectStaticName):
2793         Add new FcPatternRemove/FcPatternAppend.
2794         FcObjectStaticName stores computed pattern element names which
2795         are required to be static.
2796         
2797 2004-09-09 "NAKAMURA Ken'ichi" <nakamura@sbp.fp.a.u-tokyo.ac.jp>
2798
2799         reviewed by: keithp
2800
2801         * Makefile.am:
2802         Remove spurious / after $(DESTDIR)
2803
2804 2004-06-30  Keith Packard  <keithp@keithp.com>
2805
2806         * README:
2807         * configure.in:
2808         * fontconfig/fontconfig.h:
2809         Update for 2.2.96
2810
2811 2004-06-30  Keith Packard  <keithp@keithp.com>
2812
2813         Provided by: Lubos Lunak <l.lunak@suse.cz>
2814
2815         * src/fccfg.c: (FcConfigUptoDate):
2816         However FcConfigUptoDate() doesn't seem to work. See the attached
2817         patch.  First there's an obvious misplaced parenthesis making it
2818         return always false, and second, even this call fails to detect font
2819         changes (e.g.  adding a new font to 
2820         /usr/X11R6/lib/X11/fonts/truetype). The patch should fix that as
2821         well. The problem seems to be triggered by my fonts.conf specifying
2822         only /usr/X11R6/lib/X11/fonts , and therefore config->configDirs
2823         doesn't include subdirs, unlike config->fontDirs.
2824
2825 2004-06-03  Keith Packard  <keithp@keithp.com>
2826
2827         * fontconfig/fontconfig.h:
2828         Remove comma at end of FcResult enum definition.
2829
2830 2004-05-29  Keith Packard  <keithp@keithp.com>
2831
2832         * INSTALL:
2833         Add steps to md5sum release
2834
2835 2004-05-29  Keith Packard  <keithp@keithp.com>
2836
2837         * README:
2838         * configure.in:
2839         * fontconfig/fontconfig.h:
2840         Update for 2.2.95
2841
2842 2004-05-29  Keith Packard  <keithp@keithp.com>
2843
2844         * fontconfig/fontconfig.h:
2845         * src/fcmatch.c: (FcFontSetMatch):
2846         Add FcResultOutOfMemory to provide an accurate error when
2847         FcFontSetMatch fails in this way
2848         
2849         * src/fcfreetype.c:
2850         Make #warning about lacking various FreeType features indicate
2851         which version those features appeared so users know how to
2852         fix the problem (Thanks to Anton Tropashko)
2853
2854 2004-05-05  Keith Packard  <keithp@keithp.com>
2855
2856         * src/fcfreetype.c: (FcFreeTypeCharSetAndSpacing):
2857         Replace MIN/MAX/ABS macros which happen to have come
2858         from FreeType with fontconfig-specific ones (FC_*)
2859
2860 2004-04-23  Keith Packard  <keithp@keithp.com>
2861
2862         * INSTALL:
2863         Extend release preparation instructions to include
2864         notification and distribution steps
2865
2866 2004-04-23  Keith Packard  <keithp@keithp.com>
2867
2868         * README:
2869         * configure.in:
2870         * fontconfig/fontconfig.h:
2871         Update to 2.2.94 (2.2.93 shipped with broken libtool bits)
2872
2873 2004-04-23  Keith Packard  <keithp@keithp.com>
2874
2875         * .cvsignore:
2876         Ignore a few more autotool files
2877
2878 2004-04-14  Keith Packard  <keithp@keithp.com>
2879
2880         * INSTALL:
2881         Add instructions for doing a release
2882         
2883         * fontconfig.spec.in:
2884         clean up .spec file; perhaps this will be useful to somebody...
2885
2886         * README:
2887         * configure.in:
2888         * fontconfig/fontconfig.h:
2889         Update to 2.2.93
2890         
2891         * fc-lang/fc-lang.c:
2892         Make 'scanopen' static so GCC doesn't whine about lacking prototype
2893         
2894         * fc-glyphname/Makefile.am:
2895         * fc-lang/Makefile.am:
2896         * fc-list/Makefile.am:
2897         * fc-match/Makefile.am:
2898         * src/Makefile.am:
2899         Add WARN_CFLAGS to pass -W flags for GCC systems
2900         
2901         * src/fcfreetype.c: (FcNoticeFoundry), (FcVendorMatch),
2902         (FcVendorFoundry), (FcGetPixelSize), (FcFreeTypeQuery):
2903         Change various char types around to match across
2904         function calls.
2905         Fixed bug in using available_sizes[i].height which 
2906         is in pixels, not 64ths of a pixel.
2907
2908 2004-03-06  Keith Packard  <keithp@keithp.com>
2909
2910         * src/fcfreetype.c: (FcFreeTypeQuery):
2911         Force FC_FOUNDRY and FC_WIDTH to always be set so that
2912         matches looking for explicit values prefer exact matches
2913
2914 2004-03-02  Keith Packard  <keithp@keithp.com>
2915
2916         Supplied by: mfabian@suse.de (Mike FABIAN)
2917
2918         * src/fcfreetype.c: (FcFreeTypeQuery):
2919         Bug #260 fc-cache generates wrong spacing values for bitmap fonts
2920         Was using (strcmp (a,b)) instead of (!strcmp(a,b)).
2921
2922 2004-02-21  Manish Singh  <yosh@gimp.org>
2923
2924         * fc-glyphname/fc-glyphname.c: (main):
2925         Cast strlen to int for printf, so we're 64-bit clean.
2926
2927 2004-02-11  Keith Packard  <keithp@keithp.com>
2928
2929         * configure.in:
2930         * src/fcfreetype.c: (FcGetPixelSize):
2931         Ok, so I messed up the test for y_ppem.  Let's see if I
2932         got it right this time.
2933
2934 2004-02-10  Keith Packard  <keithp@keithp.com>
2935
2936         * configure.in:
2937         * src/fcfreetype.c: (FcGetPixelSize):
2938         Pre-2.1.5 versions of FreeType didn't include y_ppem in the
2939         FT_Bitmap_Size record.  Add a configure.in test for this
2940         and change the code accordingly (using height instead).
2941
2942 2004-02-06  Keith Packard  <keithp@keithp.com>
2943
2944         * fc-lang/nds.orth:
2945         Add Low Saxon orthography 
2946                 (Kenneth Rohde Christiansen <kenneth@gnu.org>)
2947                 
2948         * src/fccfg.c: (FcConfigNewestFile):
2949         Oops.  Left 'newest.set' unset, which would miscompute
2950         the newest file
2951         
2952         * src/fcfreetype.c: (FcGetPixelSize), (FcFreeTypeQuery),
2953         (FcFreeTypeCheckGlyph):
2954         Add FcGetPixelSize to extract correct pixel size from bdf/pcf
2955         font properties (which report the wrong value in current FreeType)
2956
2957         Don't attempt to check for empty glyphs in non-scalable fonts; they
2958         have no outlines...
2959
2960 2004-02-01  Tor Lillqvist  <tml@iki.fi>
2961
2962         * src/fccfg.c (FcConfigCreate): fontconfig, at least as used by
2963         GIMP and/or PangoFT2 on Windows, crashes when trying to save the
2964         cache if config->cache is NULL, which happens if FcConfigHome() is
2965         NULL. Guard against that by using the temp folder in that case.
2966
2967 2004-01-03  Roozbeh Pournader  <roozbeh@sharif.edu>
2968
2969         * fc-lang/az_ir.orth:
2970         * fc-lang/ku_ir.orth:
2971         * fc-lang/ps_af.orth:
2972         * fc-lang/ps_pk.orth:
2973         Added orthographies for Iranian Azerbaijani and Kurdish, and Pashto
2974         (Afghan and Pakistani).
2975         * fc-lang/ur.orth:
2976         Updated Urdu orthography with real data.
2977
2978 2003-12-11  Carl Worth  <cworth@east.isi.edu>
2979
2980         * fc-list/Makefile.am (man_MANS): Move man_MANS into the 'if
2981         USEDOCBOOK' block.
2982
2983         * fc-cache/Makefile.am (man_MANS): Move man_MANS into the 'if
2984         USEDOCBOOK' block.
2985         (all-local): Remove excessive whitespace.
2986
2987         * autogen.sh: Add 'set -e' to abort when any program fails,
2988         (avoids printing of 'now type make' after configure aborts).
2989
2990 2003-11-17   Eric Christopherson  <rakko@charter.net>
2991
2992         reviewed by: Keith Packard  <keithp@keithp.com>
2993
2994         * doc/Makefile.am:
2995         * fontconfig/fcfreetype.h:
2996         * src/fcfreetype.c:
2997         Switch to FreeType 2.1.7 style includes.  Bug #150.
2998
2999 2003-11-16  Noah Levitt  <nlevitt@columbia.edu>
3000
3001         * fc-list/fc-list.sgml: Add some example usages.
3002
3003 2003-11-10  Roozbeh Pournader  <roozbeh@sharif.edu>
3004
3005         * src/fcxml.c:
3006         Fixed a bug "FcStrtod" in handling some cases with two-byte decimal
3007         separators.
3008
3009 2003-10-27  Keith Packard  <keith@keithp.com>
3010
3011         * configure.in:
3012         * fontconfig/fontconfig.h:
3013         Update to version 2.2.92
3014
3015 2003-10-27  Keith Packard  <keithp@keithp.com>
3016
3017         * Makefile.am:
3018         * configure.in:
3019         * doc/Makefile.am:
3020         * fc-cache/Makefile.am:
3021         * fc-glyphname/Makefile.am:
3022         * fc-lang/Makefile.am:
3023         * fc-list/Makefile.am:
3024         * fc-match/Makefile.am:
3025         * test/Makefile.am:
3026         * test/run-test.sh:
3027         Yet more cleanups to finish getting 'make distcheck' working
3028         This has been tested to ensure that it even works from a _build
3029         directory.
3030
3031 2003-10-26  Keith Packard  <keithp@keithp.com>
3032
3033         * configure.in:
3034         * doc/Makefile.am:
3035         * fc-cache/Makefile.am:
3036         * fc-glyphname/Makefile.am:
3037         * fc-lang/Makefile.am:
3038         * fc-lang/fc-lang.c: (scanopen), (scan), (main):
3039         * fc-list/Makefile.am:
3040         * fc-match/Makefile.am:
3041         Attempts to fix 'make distcheck' work.  Things are
3042         progressing pretty well, but there are still failures
3043         long into the process dealing with docs (as always).
3044         
3045         The big changes here are mostly to make $(srcdir) != "."
3046         work correctly, fixing the docbook related sections and
3047         fc-lang were particularily tricky.  Docbook refuses to load
3048         system entities from anywhere other than where the original .sgml
3049         file was located, so no luck looking in "." for the
3050         configure-generated version.sgml and confdir.sgml files.
3051
3052         fc-lang needed help finding .orth files; added a -d option
3053         to set the directory as the least evil of many options.
3054
3055         Now to go use a faster machine and try and wring out the last
3056         issues.
3057
3058 2003-10-26  Keith Packard  <keithp@keithp.com>
3059
3060         Tag version 2.2.91
3061
3062 2003-10-26  Keith Packard  <keithp@keithp.com>
3063
3064         * doc/Makefile.am:
3065         Include confdir.sgml.in in EXTRA_DIST
3066
3067 2003-10-09  Josselin Mouette  <joss@debian.org>
3068
3069         * fc-cache/fc-cache.sgml fc-cache/Makefile.am:
3070         * fc-list/fc-list.sgml fc-list/Makefile.am:
3071           Replace fc-cache and fc-list manpages with more detailed, SGML
3072           versions.
3073
3074 2003-09-23  Owen Taylor <otaylor@redhat.com>
3075
3076         * fontconfig/fontconfig.h  src/fcdefault.c (FcDefaultSubstitute)
3077         src/fcname.c: Add a FC_HINT_STYLE key for patterns, with
3078         possible values HINT_NONE/HINT_SLIGHT/HINT_MEDIUM/HINT_FULL.
3079         (Bug #117)
3080
3081 2003-09-23  Owen Taylor <otaylor@redhat.com>
3082
3083         * fc-lang/ka.orth: Remove Georgian capitals, they
3084         aren't used for normal writing. (Bug #116)
3085
3086 2003-09-06  Noah Levitt  <nlevitt@columbia.edu>
3087
3088         * doc/fontconfig-devel.sgml:
3089         * doc/fontconfig-user.sgml:
3090         * fontconfig/fontconfig.h:
3091         * src/fcname.c:
3092         * src/fcfreetype.c (FcFreeTypeCharSetAndSpacing): Add new spacing
3093         value FC_DUAL (dual-width, as some CJK fonts). (bug #111)
3094
3095         * src/fcfreetype.c (FcFreeTypeCharSetAndSpacing): When checking for
3096         monospace and dual-width fonts, allow roughly a 3% variance in the
3097         advances.
3098
3099 2003-08-31  Manish Singh  <yosh@gimp.org>
3100
3101         * src/fccfg.c (FcConfigAppFontClear): Support passing NULL to
3102         use default config.
3103
3104 2003-08-15  Carl Worth  <cworth@isi.edu>
3105
3106         * src/fcxml.c (FcEditDestroy): Fix leak of FcEdit.
3107         (FcPopExpr): Add comment about unhandled FcVStackGlob case.
3108
3109         * src/fcpat.c (FcValueListEntDestroy): New function to support
3110         FcFini memory cleanup. Some statistics are not kept in
3111         synch. here.
3112         (FcValueListFreeze): Move hashTable outside this function so it
3113         can be accessed by FcValueListThawAll.
3114         (FcValueListThawAll): New function complements FcValueListFreeze.
3115         (FcPatternBaseFreeze): Move hashTable outside this function so it
3116         can be accessed by FcPatternBaseThawAll.
3117         (FcPatternBaseThawAll): New function complements
3118         FcPatternBaseFreeze.
3119         (FcPatternThawAll): New function complements FcPatternFreeze.
3120
3121         * src/fcinit.c (FcFini): Add new FcFini to cleanup everything.
3122
3123         * src/fccharset.c (FcCharLeafEntCreate): Save pointers to all
3124         allocated FcCharLeafEnt "blocks" so they can be freed later.
3125         (FcCharSetFreezeLeaf): Move hashTable outside this function so it
3126         can be accessed by FcCharSetThawAllLeaf.
3127         (FcCharSetThawAllLeaf): New function complements FcCharSetFreezeLeaf.
3128         (FcCharSetFreezeBase): Move hashTable outside this function so it
3129         can be accessed by FcCharSetThawAll.
3130         (FcCharSetThawAll): New function complements FcCharSetFreeze.
3131
3132         * src/fccfg.c (FcSubstDestroy): Fix leak of outer FcSubst.
3133         (FcConfigDestroy): Fic leak of FcBlanks.
3134
3135         * fc-list/fc-list.c (main): Fix leak of FcObjectSet.
3136         (main): Add call to FcFini when finished.
3137
3138         * fc-glyphname/fc-glyphname.c: Mark several local functions as
3139         static. Add prototypes.
3140
3141         * doc/fcinit.fncs: Add documentation for FcFini function.
3142
3143         * doc/edit-sgml.c: Mark several local functions as static. Add
3144         prototypes.
3145
3146         * doc/Makefile.am (DOC_MODULE): Fix "suspicious" lines.
3147
3148 2003-06-15  Tor Lillqvist  <tml@iki.fi>
3149
3150         * test/run-test.sh (FONTCONFIG_FILE): Remove CRs from the out file
3151         before comparing (needed on Windows).
3152
3153         * src/Makefile.am (install-libtool-import-lib): Fix cut&paste error.
3154
3155 2003-06-13  Tor Lillqvist  <tml@iki.fi>
3156
3157         * fontconfig-zip.in (DEVZIP): Add share/doc directory. Add Fc*.3
3158         man pages.
3159
3160         * configure.in: Set FC_DEFAULT_FONTS on Win32 to the
3161         WINDOWSFONTDIR token.
3162
3163         * src/fontconfig.def.in: Move the LIBRARY and VERSION lines to the
3164         end, not to confuse libtool, which expects the EXPORTS line to be
3165         the first. Add FcConfigEnableHome.
3166
3167         * src/fccfg.c: Check also for DLL_EXPORT as indication of being
3168         built as a DLL on Win32.
3169
3170 2003-06-09  Keith Packard <keithp@keithp.com>
3171
3172         * Tag version 2.2.90
3173
3174 2003-06-09  Keith Packard <keithp@keithp.com>
3175
3176         * Optimization in FcLangSetIndex was broken, occasionally
3177           returning a pointer to the wrong location on miss
3178
3179         * Add fc-match to test font matching from the command line.
3180
3181 2003-05-31  Keith Packard <keithp@keithp.com>
3182
3183         * (Bug 85) add support for culmus fonts
3184         * (Bug 87) Automake 1.4 doesn't do man_MAN1 correctly
3185         * (Bug 88) Fix usage info on non-long option systems (Tim Mooney)
3186
3187 2003-05-28  James Su <suzhe@turbolinux.com.cn>
3188
3189         * Fix "contains" op for strings and langsets.
3190
3191 2003-05-17  Keith Packard <keithp@keithp.com>
3192
3193         * Fix build error with BDF prop local.  Free langset after query
3194
3195 2003-05-14  Keith Packard <keithp@keithp.com>
3196
3197         * Extract spacing from XLFD atom
3198
3199 2003-05-12  Juliusz Chroboczek <jch@pps.jussieu.fr>
3200
3201         * Reinstate SETWIDTH_NAME parsing for legacy fonts, 
3202           disappeared in 1.30.
3203
3204         * Generate FC_SIZE and FC_DPI for legacy bitmap fonts
3205
3206 2003-05-12  Keith Packard <keithp@keithp.com>
3207
3208         * Use FcIsWidth to share code
3209
3210         * Set FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH when scanning fonts to avoid
3211           misclassifying some Han fonts as monospaced.
3212           
3213 2003-05-07  Keith Packard <keithp@keithp.com>
3214
3215         * Add filename-based accept/reject to ammend available fonts.
3216
3217         * Change FT_ENCODING_ADOBE_CUSTOM to ft_encoding_adobe_custom for
3218           older FreeType releases.
3219
3220 2003-05-06  Keith Packard <keithp@keithp.com>
3221
3222         * Remove 0b82 and Tamil numbers from tamil 
3223           orthography (Jungshik Shin <jshin@mailaps.org>)
3224
3225 2003-05-04  Keith Packard <keithp@keithp.com>
3226
3227         + Map glyph names in fonts with adobe custom encoding to unicode
3228
3229 2003-05-02  Keith Packard <keithp@keithp.com>
3230
3231         * Add FC_WEIGHT_BOOK as weight 75
3232
3233 2003-04-30  Keith Packard <keithp@keithp.com>
3234
3235         * Typo in bitstream foundry name
3236
3237 2003-04-24  Keith Packard <keithp@keithp.com>
3238
3239         * Eliminate italic_angle check for PS fonts
3240
3241 2003-04-23  Noah Levitt <nlevitt@columbia.edu>
3242
3243         * Getting closer to fixing /etc/fonts hard-coding.
3244
3245 2003-04-22  Keith Packard <keithp@keithp.com>
3246
3247         * Update autogen.sh to work with newer automake versions
3248         * Handle pattern elements moving during multiple edits
3249
3250 2003-04-23  James Henstridge  <james@daa.com.au>
3251
3252         * doc/fontconfig-devel.sgml: close the <para> element.
3253
3254         * doc/fcpattern.fncs: close the <para> element.
3255
3256         * doc/func.sgml: close the <refsynopsisdiv> element.
3257
3258 2003-04-22  Keith Packard <keithp@keithp.com
3259
3260         * Update autogen.sh to work with newer automake versions
3261         * Handle pattern elements moving during multiple edits
3262
3263 2003-04-17  Colin Walters <walters@debian.org>
3264
3265         + Remove some unused variables, and initialize some other ones so
3266         gcc doesn't warn us.
3267
3268 2003-04-16  Keith Packard <keithp@keithp.com>
3269
3270         + tag version 2.1.94
3271
3272 2003-04-16  Keith Packard <keithp@keithp.com>
3273
3274         + add BDF property fetching support for foundry 
3275           (from Juliusz Chroboczek)
3276         + add BDF property fetching support for width
3277
3278 2003-04-11  Juliusz Chroboczek <jch@pps.jussieu.fr>
3279
3280         + Implemented foundry generation for Type 1 and TrueType
3281
3282 2003-04-11  Gerard Escalante <g2@magestudios.net>
3283
3284         + Retrieve information from Type1 FontInfo dictionaries
3285
3286 2003-04-07  Colin Walters <walters@verbum.org>
3287
3288         + src/Makefile.am: Fix dummy makefile target names when
3289         MS_LIB_AVAILABLE isn't set.
3290
3291 2003-03-22  Tor Lillqvist  <tml@iki.fi>
3292
3293         Changes for Windows:
3294           
3295         + On Windows with gcc (a.k.a. mingw) build as a DLL.
3296           
3297         + We don't want to hardcode the fonts.conf file location in the
3298           DLL, so we look up the DLL location at run-time in a DllMain()
3299           function. The fonts.conf location is deduced from that.
3300
3301         + The colon can't be used as path separator on Windows,
3302           semicolon is used instead. File path components can be separated
3303           with either slash or backslash. Absolute paths can also begin
3304           with a drive letter.
3305
3306         + Add internal function FcStrLastSlash that strrchr's the last
3307           slash, or backslash on Windows.
3308         
3309         + There is no link() on Windows. For atomicity checks, mkdir a
3310           lock directory instead.
3311           
3312         + In addition to HOME, also look for USERPROFILE.
3313
3314         + Recognize the special font directory token WINDOWSFONTDIR, to
3315           use the system's font directory.
3316           
3317         + Remove the fontconfig-def.cpp that was obsolete. Add
3318           fontconfig.def(.in), without internal functions.
3319           
3320         + Add a fontconfig-zip(.in) script, used to build a binary
3321           distribution.
3322
3323 Fri Mar  7 07:55:00 EST 2003    Mike A. Harris <mharris@redhat.com>
3324         + RPM specfile cleanups for 2.1.92: Removed man1/* and added man5/*
3325           to main package and man3/* to devel package
3326
3327         + Added missing defattr(-, root, root) to main RPM package
3328  
3329         + Added HTML and text development documentation to -devel subpackage
3330
3331 Wed Mar  5 05:08:00 EST 2003    Mike A. Harris <mharris@redhat.com>
3332         + Added back the configure macro options --disable-docs, otherwise
3333           fontconfig installs docs into /usr/share/doc/fontconfig (with no
3334           version number) unconditionally, causing RPM to fail the build due
3335           to _unpackaged_files_terminate_build.  We pick up the pregenerated
3336           docs with %doc already.
3337
3338 Wed Mar  5 04:26:20 EST 2003    Mike A. Harris <mharris@redhat.com>
3339         + Removed commented out rpm macro define at top of spec file,
3340           replacing it with a simple explanation, since rpm macros are
3341           expanded by rpm even in comments.
3342
3343         + Changed /usr/bin to _bindir in BuildRequires lines
3344
3345         + Cleaned up rpm postinstall script, and made fc-cache use _bindir
3346
3347         + Reorganized file manifest lists
3348
3349 Sun Mar  2 14:16:17 EST 2003    Owen Taylor <otaylor@redhat.com>
3350
3351         + fontconfig.spec.in: Improvements from Red Hat spec file.
3352
3353         + {fc-lang,fc-cache,fc-list}/Makefile.am: Add man pages.
3354
3355         + docs/*.sgml: SGML fixes.
3356
3357 Sat Mar  1 17:28:53 PST 2003    keithp
3358         + Ok, so the ChangeLog is a bit out of date
3359
3360         + Lots of bugs fixed; most are in bugzilla, the
3361           biggest problems were in cache management where
3362           Owen discovered the library would lose badly when
3363           combining fonts-cache and ~/.fonts-cache data
3364
3365         + Converted from autoconf to automake.  This after
3366           getting patches accepted into libtool to allow
3367           the '-version-number' argument which lets
3368           packages set version numbers explicitly rather
3369           than the roundabout libtool way
3370
3371         + Converted documentation to SGML using the docbook
3372           DTD.  Now .txt and .html documents are installed
3373           in /usr/share/doc/fontconfig and there's no
3374           man page.  Perhaps a man version can be written
3375           at some point.
3376
3377 Sat Aug 31 15:21:22 PDT 2002    keithp
3378         + Xrender and Xft had several bugs related to
3379           rendering manually placed or poly-face text
3380
3381         + Added more complete memory tracing in fontconfig
3382           Checked with (patched) mozilla and found no leaks
3383
3384         + Updated Latin orthographies by comparing those from
3385           evertype.com with those from eki.ee.  Tried to make
3386           sensible choices, including chars that occured in both
3387           and leaving some optional chars out that occured only
3388           in one.
3389
3390 Mon Aug 26 16:33:04 PDT 2002    keithp
3391         + Owen discovered that FcLangSetHasLang wasn't actually
3392           checking the language set.
3393
3394 Mon Aug 26 13:37:23 PDT 2002    keithp
3395         + Append a version number to cache filenames
3396
3397 Thu Aug 22 11:36:18 PDT 2002    keithp
3398
3399         + Add "contains" and "not_contains" operators and elements to
3400           font configuration
3401           
3402         + Changed semantics of eq operator for LangSets to check for
3403           FcLangEqual so that any match will do
3404         
3405         + FcFontList was using FcConfigCompareValue (...FcOpEqual) instead
3406           of FcValueEqual to check for identical values when inserting into
3407           the results.  This broke when the above semantic change was made,
3408           now it uses FcValueEqual which is "more correct" in any case.
3409
3410 Thu Aug 22 00:32:29 PDT 2002    keithp
3411
3412         + Reimplement FC_LANG as new datatype.  Lists of strings
3413           was consuming over a megabyte of memory for 401 fonts.
3414
3415         + Freeze patterns loaded from cache files.  This shares
3416           common value lists and common patterns which saves
3417           considerable memory.
3418
3419         + Change the denotation of 'constant' charsets to use special
3420           ref value instead of separate boolean.
3421
3422         + Clean up leak tracing stuff, found several unannoted alloc/free
3423           calls
3424
3425 Tue Aug 20 16:17:37 PDT 2002    keithp
3426
3427         + Fix memory leak when parsing matrices from XML
3428
3429 Mon Aug 19 11:57:27 PDT 2002    keithp
3430
3431         + Fix autoconf files to pass FONTCONFIG_PATH on
3432           compile line so that ${prefix} gets substituted
3433           correctly.
3434
3435         + Use getc_unlocked/putc_unlocked on systems that
3436           provide them to avoid damage done to stdio by posix
3437
3438         + Eliminate FC_PATTERN and FcTypePattern in favor of
3439           an extended api for FcConfigSubstitute which takes
3440           both the font and the pattern.
3441
3442         + Add 'sans serif' alias for 'sans-serif' as some apps
3443           can't handle hyphens in family names
3444
3445         + Eliminate pretense of support for libxml2
3446
3447         + Comment origins of Han orthographies
3448
3449 Tue Jul 30 18:37:09 PDT 2002    keithp
3450
3451         + Add binding property to edit element so that strong
3452           binding values may be inserted by the config file.
3453           The default remains weak.
3454
3455 Sun 28 Jul 04:16:55 PDT 2002    keithp
3456
3457         + Tagged release candidate 1 in the CVS tree and
3458           placed fcpackage.rc1.tar.gz for distribution
3459
3460 Thu Aug  1 08:55:08 PDT 2002    keithp
3461
3462         + Fixed autoconf builds to always specify install
3463           target files (for BSD).  Also fixed to
3464           define FONTCONFIG_PATH in config.h so that
3465           nonstandard installs will actually work.