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