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