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