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