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