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