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