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