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