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