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