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