~ubuntu-branches/ubuntu/gutsy/vnc4/gutsy

« back to all changes in this revision

Viewing changes to unix/xc/extras/freetype2/ChangeLog

  • Committer: Bazaar Package Importer
  • Author(s): Ola Lundqvist
  • Date: 2006-05-15 20:35:17 UTC
  • mfrom: (1.1.2 upstream)
  • Revision ID: james.westby@ubuntu.com-20060515203517-l4lre1ku942mn26k
Tags: 4.1.1+X4.3.0-10
* Correction of critical security issue. Thanks to Martin Kogler
  <e9925248@student.tuwien.ac.at> that informed me about the issue,
  and provided the patch.
  This flaw was originally found by Steve Wiseman of intelliadmin.com.
* Applied patch from Javier Kohen <jkohen@users.sourceforge.net> that
  inform the user that only 8 first characters of the password will
  actually be used when typing more than 8 characters, closes:
  #355619.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
2002-06-11  David Turner  <david@freetype.org>
 
2
 
 
3
        * builds/win32/ftdebug.c: added a missing #endif
 
4
 
 
5
        * src/sfnt/ttload.c, src/bdf/bdflib.c: removing compiler warnings
 
6
 
 
7
        * src/type42/t42objs.c: removed the bug that prevented un-hinted
 
8
        outlines to be loaded
 
9
 
 
10
2002-06-08  Juliusz Chroboczek  <jch@pps.jussieu.fr>
 
11
 
 
12
        * include/freetype/internal/ftobjs.h, src/autohint/ahglyph.c,
 
13
        src/base/ftobjs.c, src/sfnt/ttcmap0.c, src/smooth/ftgrays.c: Don't
 
14
        use `setjmp', `longjmp', and `jmp_buf' but `ft_setjmp', `ft_longjmp',
 
15
        and `ft_jmp_buf'.
 
16
        Removed direct references to <stdio.h> and <setjmp.h> when
 
17
        appropriate, to eventually replace them with a
 
18
        FT_CONFIG_STANDARD_LIBRARY_H.  Useful for the XFree86 Font Server
 
19
        backend based on FT2.
 
20
 
 
21
        * src/base/fttype1.c (FT_Has_PS_Glyph_Names): Fix return value.
 
22
 
 
23
2002-06-08  David Turner  <david@freetype.org>
 
24
 
 
25
        * src/pcf/pcfdriver.c (pcf_cmap_char_next): Fixed a bug that caused
 
26
        the function to return invalid values.
 
27
 
 
28
        * src/cache/ftccache.i: Removing a typo that prevented
 
29
        the source's compilation.
 
30
 
 
31
        * src/cache/ftccache.c (ftc_node_hash_unlink): Fixed a
 
32
        bug that caused nasty memory overwrites.  The hash table's
 
33
        buckets array wasn't correctly resized when shrinked.
 
34
 
 
35
2002-06-08  Detlef W�rkner  <TetiSoft@apg.lahn.de>
 
36
 
 
37
        * builds/amiga/smakefile, builds/amiga/makefile: Updated.
 
38
 
 
39
2002-06-08  Werner Lemberg  <wl@gnu.org>
 
40
 
 
41
        * src/cache/ftccache.c (ftc_node_hash_unlink, ftc_node_hash_link)
 
42
        [FTC_CACHE_USE_LINEAR_HASHING]: Fix returned error code.
 
43
        Fix debugging messages.
 
44
        * src/cache/ftccache.i (GEN_CACHE_LOOKUP): Move declaration of
 
45
        `family' and `hash' up to make it compilable with g++.
 
46
 
 
47
        * src/type42/t42error.h: New file.
 
48
        * src/type42/t42drivr.c, src/type42/t42objs.c,
 
49
        src/type42/t42parse.c: Use t42 error codes.
 
50
        * src/type42/rules.mk: Updated.
 
51
 
 
52
        * src/base/ftnames.c: Include FT_INTERNAL_STREAM_H.
 
53
 
 
54
2002-06-08  David Turner  <david@freetype.org>
 
55
 
 
56
        * src/cache/ftccmap.c: GEN_CACHE_FAMILY_COMPARE,
 
57
        GEN_CACHE_NODE_COMPARE, GEN_CACHE_LOOKUP) [FTC_CACHE_USE_INLINE]:
 
58
        New macros.
 
59
        (ftc_cmap_cache_lookup) [!FTC_CACHE_USE_INLINE]: Typedef to
 
60
        ftc_cache_lookup.
 
61
        (FTC_CMapCache_Lookup): Updated.
 
62
 
 
63
        Adding various experimental optimizations to the cache manager.
 
64
 
 
65
        * include/freetype/cache/ftccache.h (FTC_CACHE_USE_INLINE,
 
66
        FTC_CACHE_USE_LINEAR_HASHING): New options.
 
67
        (FTC_CacheRec) [FTC_CACHE_USE_LINEAR_HASHING]: New elements `p',
 
68
        `mask', and `slack'.
 
69
 
 
70
        * src/cache/ftccache.c (FTC_HASH_MAX_LOAD, FTC_HASH_MIN_LOAD,
 
71
        FTC_HASH_SUB_LOAD) [FTC_CACHE_USE_LINEAR_HASHING,
 
72
        FTC_HASH_INITIAL_SIZE]: New macros.
 
73
        (ftc_node_mru_link, ftc_node_mru_up): Optimized.
 
74
        (ftc_node_hash_unlink, ftc_node_hash_link)
 
75
        [FTC_CACHE_USE_LINEAR_HASHING]: New variants.
 
76
        (FTC_PRIMES_MIN, FTC_PRIMES_MAX, ftc_primes, ftc_prime_closest,
 
77
        FTC_CACHE_RESIZE_TEST, ftc_cache_resize)
 
78
        [!FTC_CACHE_USE_LINEAR_HASHING]: Define it conditionally.
 
79
        (ftc_cache_init, ftc_cache_clear) [FTC_CACHE_USE_LINEAR_HASHING]:
 
80
        Updated.
 
81
        (ftc_cache_lookup) [FTC_CACHE_USE_LINEAR_HASHING]: Implement it.
 
82
 
 
83
        * src/cache/ftccache.i: New file.
 
84
 
 
85
        * src/cache/ftcsbits.c (GEN_CACHE_FAMILY_COMPARE,
 
86
        GEN_CACHE_NODE_COMPARE, GEN_CACHE_LOOKUP) [FTC_CACHE_USE_INLINE]:
 
87
        New macros.
 
88
        (ftc_sbit_cache_lookup) [!FTC_CACHE_USE_INLINE]: Typedef to
 
89
        ftc_cache_lookup.
 
90
        (FTC_SBitCache_Lookup): Updated.
 
91
 
 
92
        * src/type42/t42parse.c: Removing duplicate function.
 
93
 
 
94
2002-06-07  Graham Asher  <graham.asher@btinternet.com>
 
95
 
 
96
        * src/base/ftobjs.c (FT_Render_Glyph_Internal): Changed definition
 
97
        from FT_EXPORT_DEF to FT_BASE_DEF.
 
98
 
 
99
2002-06-07  David Turner  <david@freetype.org>
 
100
 
 
101
        Fixed the bug that prevented the correct display of fonts with
 
102
        "ftview".
 
103
 
 
104
        * src/type42/t42drivr.c: Split into...
 
105
        * src/type42/t42drivr.h, src/type42/t42parse.c,
 
106
        src/type42/t42parse.h, src/type42/t42objs.h, src/type42/t42objs.c,
 
107
        src/type42/type42.c: New files.
 
108
 
 
109
        (t42_get_glyph_name, t42_get_ps_name, t42_get_name_index): Use
 
110
        `face->type1'.
 
111
 
 
112
        (Get_Interface): Renamed to...
 
113
        (T42_Get_Interface): This.
 
114
        Updated.
 
115
        (T42_Open_Face, T42_Face_Done): Updated.
 
116
        (T42_Face_Init): Add new cmap support.
 
117
        Updated.
 
118
        (T42_Driver_Init, T42_Driver_Done, T42_Size_Init, T42_Size_Done,
 
119
        T42_GlyphSlot_Init, T42_GlyphSlot_Done): Updated.
 
120
        (Get_Char_Index, Get_Next_Char): Renamed to...
 
121
        (T42_CMap_CharIndex, T42_CMap_CharNext): This.
 
122
        Updated.
 
123
        (T42_Char_Size, T42_Pixel_Size): Renamed to...
 
124
        (T42_Size_SetChars, T42_Size_SetPixels): This.
 
125
        (T42_Load_Glyph): Renamed to...
 
126
        (T42_GlyphSlot_Load): This.
 
127
 
 
128
        (t42_init_loader, t42_done_loader): Renamed to...
 
129
        (t42_loader_init, t42_loader_done): This.
 
130
        (T42_New_Parser, T42_Finalize_Parser): Renamed to...
 
131
        (t42_parser_init, t42_parser_done): This.
 
132
        (parse_dict): Renamed to...
 
133
        (t42_parse_dict): This.
 
134
        (is_alpha, is_space, hexval): Renamed to...
 
135
        (t42_is_alpha, t42_is_space, t42_hexval): This.
 
136
        (parse_font_name, parse_font_bbox, parse_font_matrix,
 
137
        parse_encoding, parse_sfnts, parse_charstrings, parse_dict):
 
138
        Renamed to...
 
139
        (t42_parse_font_name, t42_parse_font_bbox, t42_parse_font_matrix,
 
140
        t42_parse_encoding, t42_parse_sfnts, t42_parse_charstrings,
 
141
        t42_parse_dict): This.
 
142
        Updated.
 
143
 
 
144
        (t42_keywords): Updated.
 
145
 
 
146
        * src/type42/Jamfile, src/type42/descrip.mms: Updated.
 
147
 
 
148
2002-06-03  Werner Lemberg  <wl@gnu.org>
 
149
 
 
150
        Add 8bpp support to BDF driver.
 
151
 
 
152
        * src/bdf/bdflib.c (_bdf_parse_start): Handle 8bpp.
 
153
        * src/bdf/bdfdrivr.c (BDF_Glyph_Load): Ditto.
 
154
        * src/bdf/README: Updated.
 
155
 
 
156
2002-06-02  Detlef W�rkner  <TetiSoft@apg.lahn.de>
 
157
 
 
158
        * src/pfr/pfrload.c (pfr_phy_font_done): Free `blue_values' array.
 
159
 
 
160
2002-05-29  Detlef W�rkner  <TetiSoft@apg.lahn.de>
 
161
 
 
162
        * src/bdf/bdflib.c (_bdf_readstream): Allocate `buf' dynamically.
 
163
        (_bdf_parse_glyphs): Use correct size for allocating
 
164
        `font->unencoded'.
 
165
        (bdf_load_font): Free array conditionally.
 
166
        Return proper error code in case of failure.
 
167
        * src/bdf/bdfdrivr.c (BDF_Face_Init): Make it more robust against
 
168
        unusual fonts.
 
169
 
 
170
2002-05-29  Werner Lemberg  <wl@gnu.org>
 
171
 
 
172
        * src/bdf/descrip.mms, src/type42/descrip.mms: New files.
 
173
        * descrip.mms (all): Updated.
 
174
 
 
175
        * src/bdf/bdflib.c (_bdf_parse_glyphs): Fix typo which prevented
 
176
        compilation.
 
177
        * src/pshglob.c (psh_blues_scale_zones): Fix compiler warning.
 
178
 
 
179
2002-05-28  Detlef W�rkner  <TetiSoft@apg.lahn.de>
 
180
 
 
181
        * builds/amiga/makefile, builds/amiga/smakefile,
 
182
        amiga/include/freetype/config/ftmodule.h: Updated to include
 
183
        support for BDF and Type42 drivers.
 
184
 
 
185
        * docs/modules.txt: Updated.
 
186
 
 
187
2005-05-28  David Turner  <david@freetype.org>
 
188
 
 
189
        * docs/CHANGES: Updating file for next release (2.1.1).
 
190
 
 
191
        * src/bdf/bdflib.c: Removing compiler warnings.
 
192
 
 
193
        * include/freetype/ftxf86.h, src/base/ftxf86.c: New files.
 
194
        They provide a new API (FT_Get_X11_Font_Format) to retrieve an
 
195
        X11-compatible string describing the font format of a given face.
 
196
        This was put in a new optional base source file, corresponding to a
 
197
        new public header (named FT_XFREE86_H since this function should
 
198
        only be used within the XFree86 font server IMO).
 
199
 
 
200
        * include/freetype/config/ftheader.h (FT_XFREE86_H): New macro (not
 
201
        documented yet).
 
202
 
 
203
        * src/base/fttype1.c: New file, provoding two new API functions
 
204
        (FT_Get_PS_Font_Info and FT_Has_PS_Glyph_Names).
 
205
        * include/freetype/t1tables.h: Updated.
 
206
 
 
207
        * src/base/Jamfile, src/base/rules.mk, src/base/descrip.mms:
 
208
        Updating build control files for the new files "ftxf86.c" and
 
209
        "fttype1.c" in src/base.
 
210
 
 
211
        * src/pshinter/pshglob.c (psh_blues_scale_zones): Fixed a bug that
 
212
        prevented family blue zones substitution from hapenning correctly.
 
213
 
 
214
        * include/freetype/ftbdf.h FT_Get_BDF_Charset_ID): Adding
 
215
        documentation comment.
 
216
 
 
217
2002-05-28  Werner Lemberg  <wl@gnu.org>
 
218
 
 
219
        * src/base/ftnames.c (FT_Get_Sfnt_Name): Don't use FT_STREAM_READ_AT
 
220
        but FT_STREAM_READ.
 
221
        Declare `stream' variable.
 
222
 
 
223
        * src/bdf/bdflib.c (_bdf_parse_glyphs): Replace floating point math
 
224
        with calls to `FT_MulDiv'.
 
225
 
 
226
2002-05-28  David Turner  <david@freetype.org>
 
227
 
 
228
        Fixing the SFNT name table loader to support various buggy fonts.
 
229
        It now ignores empty name entries, entries with invalid pointer
 
230
        Offsets and certain fonts containing tables with broken
 
231
        "storageOffset" fields.
 
232
 
 
233
        Name strings are now loaded on demand, which reduces the memory
 
234
        requirements for a given FT_Face tremendously (for example, the name
 
235
        table of Arial.ttf is about 10Kb and contains 70 names).
 
236
 
 
237
        This is a temporary fix.  The whole name table loader and interface
 
238
        will be rewritten in a much more cleanly way shortly, once CSEH have
 
239
        been introduced in the sources.
 
240
 
 
241
        * include/freetype/internal/tttypes.h (TT_NameEntryRec): Change
 
242
        type of `stringOffset' to FT_ULong.
 
243
        (TT_NameTableRec): Change type of `numNameRecords' and
 
244
        `storageOffset' to FT_UInt.
 
245
        Replace `storage' with `stream'.
 
246
        * src/base/ftnames.c (FT_Get_Sfnt_Name): Load name on demand.
 
247
        * src/sfnt/sfdriver.c (get_sfnt_postscript_name): Ditto.
 
248
        Make code more robust.
 
249
        * src/sfnt/sfobjs.c (TT_NameEntry_ConvertFunc): New typedef.
 
250
        (tt_face_get_name): Use it.
 
251
        Make code more robust.
 
252
        * src/sfnt/ttload.c (TT_Load_Names): Use `static' for arrays.
 
253
        Handle invalid `storageOffset' data better.
 
254
        Set length fields to zero for invalid or ignored data.
 
255
        Remove code within FT_DEBUG_LEVEL_TRACE.
 
256
        (TT_Free_Names): Updated.
 
257
 
 
258
2002-05-24  Tim Mooney  <enchanter@users.sourceforge.net>
 
259
 
 
260
        * builds/unix/ft-munmap.m4: New file, extracted FT_MUNMAP_DECL and
 
261
        FT_MUNMAP_PARAM from aclocal.m4 into here, so aclocal.m4 can be
 
262
        rebuilt from sources.  Set macro serial to 1, and use third argument
 
263
        to AC_DEFINE for our two custom symbols, so ftconfig.in could one day
 
264
        be rebuilt with autoheader (not recommended now, ftconfig.in is a
 
265
        custom source file)
 
266
 
 
267
2002-05-22  Werner Lemberg  <wl@gnu.org>
 
268
 
 
269
        * include/freetype/config/ftheader.h (FT_BEZIER_H): Removed.
 
270
        (FT_BDF_H): New macro for accessing `ftbdf.h'.
 
271
 
 
272
        * src/type42/t42drivr.c (hexval): Fix typo.
 
273
 
 
274
2002-05-21  Martin Muskens  <mmuskens@aurelon.com>
 
275
 
 
276
        * src/psaux/psobjs.c (T1Radix): New function.
 
277
        (t1_toint): Use it to handle numbers in radix format.
 
278
 
 
279
        * src/psaux/t1decode.c (T1_Decoder_Parse_Charstrings): Add dummy
 
280
        for undocumented, obsolete opcode 15.
 
281
 
 
282
2002-05-21  David Turner  <david@freetype.org>
 
283
 
 
284
        * src/bdf/bdflib.c: Removed compiler warning, and changed all tables
 
285
        to the "static const" storage specifier (instead of simply
 
286
        `static').
 
287
 
 
288
        * src/type42/t42drivr.c (hexval): Use more efficient code.
 
289
        Removing compiler warnings.
 
290
        * src/bdf/bdfdrivr.c: Removing compiler warnings.
 
291
 
 
292
        * include/freetype/internal/ftbdf.h, src/base/ftbdf.c,
 
293
        src/base/descrip.mms, src/base/Jamfile, src/base/rules.mk
 
294
        (FT_Get_BDF_Charset_ID): New API to retrieve BDF-specific strings
 
295
        from a face.  This is much cleaner than accessing the internal types
 
296
        "BDF_Public_Face" defined in FT_INTERNAL_BDF_TYPES_H.
 
297
 
 
298
2002-05-21  Werner Lemberg  <wl@gnu.org>
 
299
 
 
300
        * src/bdf/README: Mention Microsoft's SBIT tool.
 
301
 
 
302
        * src/cff/cffdrivr.c, src/cid/cidriver.c, src/pcf/pcfdriver.c,
 
303
        src/truetype/ttdriver.c, src/type1/t1driver.c,
 
304
        src/winfonts/winfnt.c, src/type42/t42drivr.c, src/bdf/bdfdrivr.c
 
305
        [FT_CONFIG_OPTION_DYNAMIC_DRIVERS]: Completely removed.  It has
 
306
        been never used.
 
307
 
 
308
2002-05-21  Roberto Alameda  <ojancano@geekmail.de>.
 
309
 
 
310
        * src/type42/t42drivr.c: s/T42_ENCODING_TYPE_/T1_ENCODING_TYPE_/.
 
311
        (parse_font_matrix): Remove unnecessary code.
 
312
        (parse_sfnts): Initialize some variables.
 
313
        (t42_driver_class) [TT_CONFIG_OPTION_BYTECODE_INTERPRETER]: Use
 
314
        ft_module_driver_has_hinter conditionally.
 
315
        Moved some type 42 specific structure definitions to...
 
316
        * include/freetype/internal/t42types.h: New file.
 
317
        * include/freetype/internal/internal.h (FT_INTERNAL_T42_TYPES_H):
 
318
        New macro.
 
319
 
 
320
2002-05-20  Werner Lemberg  <wl@gnu.org>
 
321
 
 
322
        * include/freetype/cache/ftcsbits.h (FTC_SBit): Added a new field
 
323
        `num_grays' for specifying the number of used gray levels.
 
324
        * src/cache/ftcsbits.c (ftc_sbit_node_load): Initialize it.
 
325
 
 
326
2002-05-19  Werner Lemberg  <wl@gnu.org>
 
327
 
 
328
        Adding a driver for BDF fonts written by Francesco Zappa Nardelli
 
329
        <Francesco.Zappa.Nardelli@ens.fr>.  Heavily modified by me to
 
330
        better adapt it to FreeType, removing unneeded stuff.  Additionally,
 
331
        it now supports Mark Leisher's BDF extension for anti-aliased
 
332
        bitmap glyphs with 2 and 4 bpp.
 
333
 
 
334
        * src/bdf/*: New driver.
 
335
        * include/freetype/internal/bdftypes.h: New file.
 
336
        * include/freetype/internal/fttrace.h: Added BDF driver components.
 
337
        * include/freetype/fterrdef.h: Added error codes for BDF driver.
 
338
        * include/freetype/config/ftmodule.h, src/Jamfile: Updated.
 
339
        * include/freetype/internal/internal.h (FT_INTERNAL_BDF_TYPES_H):
 
340
        New macro.
 
341
 
 
342
        * include/freetype/config/ftstdlib.h (ft_sprintf): New alias for
 
343
        sprintf.
 
344
 
 
345
2002-05-18  Werner Lemberg  <wl@gnu.org>
 
346
 
 
347
        * include/freetype/internal/fttrace.h: Added Type 42 driver
 
348
        component.
 
349
        * src/type42/t42drivr.c: Use it.
 
350
 
 
351
        * include/freetype/internal/internal.h (FT_INTERNAL_PCF_TYPES_H):
 
352
        New macro.
 
353
 
 
354
2002-05-17  Werner Lemberg  <wl@gnu.org>
 
355
 
 
356
        * src/type42/Jamfile: New file.
 
357
 
 
358
2002-05-14  Werner Lemberg  <wl@gnu.org>
 
359
 
 
360
        Adding a driver for Type42 fonts written by Roberto Alameda
 
361
        <ojancano@geekmail.de>.
 
362
 
 
363
        * src/type42/*: New driver.
 
364
        * include/freetype/config/ftmodule.h, src/Jamfile: Updated.
 
365
        * include/freetype/config/ftstdlib.h (ft_xdigit, ft_memcmp,
 
366
        ft_atoi): New aliases for xdigit, memcmp, and atoi, respectively.
 
367
 
 
368
2002-05-12  Owen Taylor  <otaylor@redhat.com>
 
369
 
 
370
        * src/sfnt/ttload.c (TT_LookUp_Table): Protect against tables
 
371
        with a zero length value.
 
372
 
 
373
2002-05-12  Michael Pfeiffer  <michael.pfeiffer@utanet.at>
 
374
 
 
375
        * builds/beos/beos.mk: Include `link-std.mk'.
 
376
 
 
377
2002-05-12  Werner Lemberg  <wl@gnu.org>
 
378
 
 
379
        * src/type1/t1load.h (T1_Loader): Renamed to...
 
380
        (T1_LoaderRec): This.
 
381
        (T1_Loader): Now pointer to T1_LoaderRec.
 
382
        * src/type1/t1load.c: Updated.
 
383
 
 
384
        * include/freetype/internal/t1types.h, src/type1/t1load.c,
 
385
        src/type1/t1objs.c:
 
386
        s/T1_ENCODING_TYPE_EXPORT/T1_ENCODING_TYPE_EXPERT/.
 
387
 
 
388
2002-05-06  Werner Lemberg  <wl@gnu.org>
 
389
 
 
390
        * README: Add a note regarding libttf vs. libfreetype.
 
391
 
 
392
2002-05-05  Werner Lemberg  <wl@gnu.org>
 
393
 
 
394
        FreeType 2 can now be built in an external directory with the
 
395
        configure script also.
 
396
 
 
397
        * builds/freetype.mk (INCLUDES): Add `OBJ_DIR'.
 
398
 
 
399
        * builds/unix/detect.mk (have_mk): New variable to test for
 
400
        external build.
 
401
        (unix-def.mk): Defined according to value of `have_mk'.
 
402
        * builds/unix/unix.mk (have_mk): New variable to test for
 
403
        external build.
 
404
        Select include paths for unix-def.mk and unix-cc.mk according
 
405
        to value of `have_mk'.
 
406
        * builds/unix/unix-def.in (OBJ_BUILD): New variable.
 
407
        (DISTCLEAN): Use it.
 
408
        * builds/unix/unix-cc.in (LIBTOOL): Define default value only
 
409
        if not yet defined.
 
410
        * builds/unix/install.mk (install): Use `OBJ_BUILD' for installing
 
411
        freetype-config.
 
412
 
 
413
        * configure: Don't depend on bash features.
 
414
        (ft2_dir, abs_curr_dir, abs_ft2_dir): New variables (code
 
415
        partially taken from Autoconf).
 
416
        Build a dummy Makefile if not building in source tree.
 
417
 
 
418
        * docs/INSTALL: Document it.
 
419
 
 
420
2002-05-04  David Turner  <david@freetype.org>
 
421
 
 
422
        * src/truetype/ttgload.c (TT_Load_Glyph): Finally fixing the last
 
423
        bug that prevented FreeType 2.x and FreeType 1.x to produce
 
424
        bit-by-bit identical monochrome glyph bitmaps with native TrueType
 
425
        hinting.  The culprit was a single-bit flag that wasn't set
 
426
        correctly by the TrueType glyph loader.
 
427
 
 
428
        * src/otlayout/otlayout.h, src/otlayout/otlbase.c,
 
429
        src/otlayout/otlbase.h, src/otlayout/otlconf.h,
 
430
        src/otlayout/otlgdef.c, src/otlayout/otlgdef.h,
 
431
        src/otlayout/otlgpos.c, src/otlayout/otlgpos.h,
 
432
        src/otlayout/otlgsub.c, src/otlayout/otlgsub.h,
 
433
        src/otlayout/otljstf.c, src/otlayout/otljstf.h,
 
434
        src/otlayout/otltable.c, src/otlayout/otltable.h,
 
435
        src/otlayout/otltags.h: New OpenType Layout source files.  The
 
436
        module is still incomplete.
 
437
 
 
438
2002-05-02  Werner Lemberg  <wl@gnu.org>
 
439
 
 
440
        * src/sfnt/ttcmap0.c (tt_cmap4_char_index): Fix serious typo
 
441
        (0xFFFU -> 0xFFFFU).
 
442
 
 
443
2002-05-01  Werner Lemberg  <wl@gnu.org>
 
444
 
 
445
        * docs/INSTALL: Fix URL of makepp.
 
446
 
 
447
2002-05-01  David Turner  <david@freetype.org>
 
448
 
 
449
        * src/sfnt/sfobjs.c (tt_face_get_name): Fixing a bug that caused
 
450
        FreeType to crash when certain broken fonts (e.g. "hya6gb.ttf")
 
451
        were opened.
 
452
 
 
453
        * src/sfnt/ttload.c (TT_Load_Names): Applied a small work-around to
 
454
        manage fonts containing a broken name table (e.g. "hya6gb.ttf").
 
455
 
 
456
        * src/sfnt/ttcmap0.c (tt_cmap4_validate): Fixed over-restrictive
 
457
        validation test.  The charmap validator now accepts overlapping
 
458
        ranges in format 4 charmaps.
 
459
 
 
460
        * src/sfnt/ttcmap0.c (tt_cmap4_char_index): Switched to a binary
 
461
        search algorithm.  Certain fonts contain more than 170 distinct
 
462
        segments!
 
463
 
 
464
        * include/freetype/config/ftstdlib.h: Adding an alias for the `exit'
 
465
        function.  This will be used in the near future to panic in case of
 
466
        unexpected exception (which shouldn't happen in theory).
 
467
 
 
468
        * include/freetype/internal/fthash.h, src/base/fthash.c: Adding a
 
469
        generic implementation of dynamic hash tables using a linear
 
470
        algorithm (to get rid of `stalls' during resizes).  This will be
 
471
        used in the future in at least three parts of the library: the cache
 
472
        sub-system, the object sub-system, and the memory debugger.
 
473
 
 
474
        * include/freetype/internal/ftcore.h: Added this header file to
 
475
        group all new definitions related to exception handling and memory
 
476
        management.  It is very likely that this file will disappear or be
 
477
        renamed in the future.
 
478
 
 
479
        * include/freetype/internal/ftobject.h, include/freetype/ftsysmem.h:
 
480
        Adding comments to better explain the object sub-system as well as
 
481
        the new memory manager interface.
 
482
 
 
483
2002-04-30  Wenlin Institute (Tom Bishop)  <wenlin@wenlin.com>
 
484
 
 
485
        * src/base/ftmac.c (p2c_str): Removed.
 
486
        (file_spec_from_path) [TARGET_API_MAC_CARBON]: Added support for
 
487
        OS X.
 
488
        (is_dfont) [TARGET_API_MAC_CARBON]: Define only for OS X.
 
489
        Handle `nameLen' <= 6 also.
 
490
        (parse_fond): Remove unused variable `name_table'.
 
491
        Use functionality of old p2c_str directly.
 
492
        Add safety checks.
 
493
        (read_lwfn): Initialize `size_p'.
 
494
        Check for size_p == NULL.
 
495
        (new_memory_stream, open_face_from_buffer): Updated to FreeType 2.1.
 
496
        (FT_New_Face_From_LWFN): Remove unused variable `memory'.
 
497
        Remove some dead code.
 
498
        (FT_New_Face_From_SFNT): Remove unused variable `stream'.
 
499
        (FT_New_Face_From_dfont) [TARGET_API_MAC_CARBON]: Define only for
 
500
        OS X.
 
501
        (FT_New_Face_From_FOND): Remove unused variable `error'.
 
502
        (ResourceForkSize): New function.
 
503
        (FT_New_Face): Use it.
 
504
        Handle empty resource forks.
 
505
        Conditionalize some code for OS X.
 
506
        Add code to call normal loader as a fallback.
 
507
 
 
508
2002-04-30  Werner Lemberg  <wl@gnu.org>
 
509
 
 
510
        `interface' is reserved on the Mac.
 
511
 
 
512
        * include/freetype/ftoutln.h, include/freetype/internal/sfnt.h,
 
513
        src/base/ftoutln.c: s/interface/func_interface/.
 
514
        * src/base/ftbbox.c (FT_Outline_Get_BBox):
 
515
        s/interface/bbox_interface/.
 
516
        * src/cff/cffdrivr.c: s/interface/module_interface/.
 
517
        * src/cff/cffload.c, src/cff/cffload.h:
 
518
        s/interface/psnames_interface/.
 
519
        * src/cid/cidriver.c: s/interface/cid_interface/.
 
520
        * src/sfnt/sfdriver.c: s/interface/module_interface/.
 
521
        * src/smooth/ftgrays.c: s/interface/func_interface/.
 
522
        * src/truetype/ttdriver.c: s/interface/tt_interface/.
 
523
        * src/type1/t1driver.c: s/interface/t1_interface/.
 
524
 
 
525
        Some more variable renames to avoid troubles on the Mac.
 
526
 
 
527
        * src/raster/ftraster.c:
 
528
        s/Unknown|Ascending|Descending|Flat/\1_State/.
 
529
        * src/smooth/ftgrays.c: s/TScan/TCoord/.
 
530
 
 
531
        Other changes for the Mac.
 
532
 
 
533
        * include/freetype/config/ftconfig.h: Define FT_MACINTOSH for
 
534
        Mac platforms.
 
535
        * src/base/ftobjs.c: s/macintosh/FT_MACINTOSH/.
 
536
 
 
537
        * src/raster/ftrend1.c (ft_raster1_render): Make `pitch' always
 
538
        an even number.
 
539
 
 
540
2002-04-29  Jouk Jansen  <joukj@hrem.stm.tudelft.nl>
 
541
 
 
542
        * descrip.mms (all): Add pfr driver.
 
543
 
 
544
2002-04-28  Werner Lemberg  <wl@gnu.org>
 
545
 
 
546
        * src/pfr/pfrerror.h: New file.
 
547
        * include/freetype/ftmoderr.h: Add PFR error codes.
 
548
        * src/pfr/pfrgload.c: Include pfrerror.h.
 
549
        Use PCF error codes.
 
550
        (pfr_extra_item_load_stem_snaps): Fix debug message.
 
551
        * src/pfr/pfrgload.c: Include pfrerror.h.
 
552
        Use PCF error codes.
 
553
        (pfr_extra_item_load_bitmap_info, pfr_glyph_load_simple,
 
554
        pfr_glyph_load_compound): Fix debug message.
 
555
        * src/pfr/pfrobjs.c: Include pfrerror.h.
 
556
        Use PCF error codes.
 
557
        (pfr_face_init): Return PFR_Err_Unknown_File_Format.
 
558
        * src/pfr/rules.mk (PFR_DRV_H): Include pfrerror.h.
 
559
 
 
560
        * src/pcf/pcfdriver.c (PCF_Face_Init) [!FT_CONFIG_OPTION_USE_CMAPS]:
 
561
        `root' -> `face->root'.
 
562
        * src/sfnt/ttcmap0.c (TT_Build_CMaps) [!FT_CONFIG_OPTION_USE_CMAPS]:
 
563
        Removed.
 
564
        * src/sfnt/ttcmap0.c: Declare TT_Build_CMaps only for
 
565
        FT_CONFIG_OPTION_USE_CMAPS.
 
566
 
 
567
2002-04-27  Werner Lemberg  <wl@gnu.org>
 
568
 
 
569
        * src/cache/ftccache.c (ftc_cache_lookup),
 
570
        src/cache/ftccmap.c (ftc_cmap_family_init),
 
571
        src/cache/ftcmanag.c (ftc_family_table_alloc),
 
572
        src/cache/ftcsbits.c (FTC_SBit_Cache_Lookup): Use FTC_Err_*.
 
573
        src/cache/ftcimage.c (FTC_Image_Cache_Lookup): Use FTC_Err_*.
 
574
        (FTC_ImageCache_Lookup): Fix handling of invalid arguments.
 
575
 
 
576
2002-04-22  Werner Lemberg  <wl@gnu.org>
 
577
 
 
578
        * builds/unix/configure.ac: Set `version_info' to 9:1:3 (FT2
 
579
        version 2.0.9 has 9:0:3).
 
580
        * builds/unix/configure: Regenerated (using autoconf 2.53).
 
581
 
 
582
2002-04-19  Werner Lemberg  <wl@gnu.org>
 
583
 
 
584
        * src/pfr/pfrload.c (pfr_extra_items_farse): Fix debug message.
 
585
        (pfr_phy_font_load): s/size/Size/ for local variable to avoid
 
586
        compiler warning.
 
587
        * src/pfr/pfrobjs.c (pfr_face_init): Fix debug message.
 
588
        (pfr_slot_load): Remove redundant local variable.
 
589
 
 
590
2002-04-19  David Turner  <david@freetype.org>
 
591
 
 
592
        Adding a PFR font driver to the FreeType sources.  Note that it
 
593
        doesn't support embedded bitmaps or kerning tables yet.
 
594
 
 
595
        src/pfr/*: New files.
 
596
 
 
597
        * include/freetype/config/ftmodule.h,
 
598
        include/freetype/internal/fttrace.h, src/Jamefile: Updated.
 
599
 
 
600
        * src/type1/t1gload.h (T1_Load_Glyph), src/type1/t1gload.c
 
601
        (T1_Load_Glyph): Fixed incorrect parameter sign-ness in callback
 
602
        function.
 
603
 
 
604
        * include/freetype/internal/ftmemory.h (FT_MEM_ZERO, FT_ZERO): New
 
605
        macros.
 
606
 
 
607
        * include/freetype/internal/ftstream.h (FT_NEXT_OFF3, FT_NEXT_UOFF3,
 
608
        FT_NEXT_OFF3_LE, FT_NEXT_UOFF3_LE): New macros to parse in-memory
 
609
        24-bit integers.
 
610
 
 
611
2002-04-18  David Turner  <david@freetype.org>
 
612
 
 
613
        * src/base/ftobjs.c, builds/win32/ftdebug.c,
 
614
        builds/amiga/src/base/ftdebug.c: Version 2.1.0 couldn't be linked
 
615
        against applications in Win32 and Amiga builds due to changes to
 
616
        "src/base/ftdebug.c" that were not properly propagated to
 
617
        "builds/win32" and "builds/amiga".  This has been fixed.
 
618
 
 
619
        * include/freetype/internal/ftobject.h,
 
620
        include/freetype/internal/ftexcept.h, include/freetype/ftsysmem.h,
 
621
        include/freetype/ftsysio.h, src/base/ftsysmem.c, src/base/ftsysio.c:
 
622
        New experimental files.
 
623
 
 
624
2002-04-17  David Turner  <david@freetype.org>
 
625
 
 
626
 
 
627
        * Version 2.1.0 released.
 
628
        =========================
 
629
 
 
630
 
 
631
2002-04-17  Michael Jansson  <mjan@em2-solutions.com>
 
632
 
 
633
        * src/type1/t1gload.c (T1_Compute_Max_Advance): Fixed a small bug
 
634
        that prevented the function to return the correct value.
 
635
 
 
636
2002-04-16  Francesco Zappa Nardelli  <Francesco.Zappa.Nardelli@ens.fr>
 
637
 
 
638
        * src/pcf/pcfread (pcf_get_accell): Fix parsing of accelerator
 
639
        tables.
 
640
 
 
641
2002-04-15  David Turner  <david@freetype.org>
 
642
 
 
643
        * docs/FTL.txt: Formatting.
 
644
 
 
645
        * include/freetype/config/ftoption.h: Reduce the size of the
 
646
        render pool from 32kByte to 16kByte.
 
647
 
 
648
        * src/pcf/pcfread.c (pcf_seek_to_table_type): Remove compiler
 
649
        warning.
 
650
 
 
651
        * include/freetype/config/ftoption.h (FT_MAX_EXTENSIONS): Removed.
 
652
 
 
653
        * docs/CHANGES: Preparing 2.1.0 release.
 
654
 
 
655
2002-04-13  Werner LEMBERG  <wl@gnu.org>
 
656
 
 
657
        * src/cff/cffgload.c (CFF_Parse_CharStrings): s/rand/Rand/ to avoid
 
658
        compiler warning.
 
659
 
 
660
2002-04-12  David Turner  <david@freetype.org>
 
661
 
 
662
        * README.UNX: Updated the Unix-specific quick-compilation guide to
 
663
        warn about the GNU Make requirement at compile time.
 
664
 
 
665
        * include/freetype/config/ftstdlib.h,
 
666
        include/freetype/config/ftconfig.h,
 
667
        include/freetype/config/ftheader.h,
 
668
        include/freetype/internal/ftmemory.h,
 
669
        include/freetype/internal/ftobjs.h,
 
670
 
 
671
        src/autohint/ahoptim.c,
 
672
 
 
673
        src/base/ftdbgmem.c, src/base/ftdebug.c, src/base/ftmac.c,
 
674
        src/base/ftobjs.c, src/base/ftsystem.c,
 
675
 
 
676
        src/cache/ftcimage.c, src/cache/ftcsbits.c,
 
677
 
 
678
        src/cff/cffdriver.c, src/cff/cffload.c, src/cff/cffobjs.c,
 
679
 
 
680
        src/cid/cidload.c, src/cid/cidparse.c, src/cid/cidriver.c,
 
681
 
 
682
        src/pcf/pcfdriver.c, src/pcf/pcfread.c,
 
683
 
 
684
        src/psaux/t1cmap.c, src/psaux/t1decode.c,
 
685
 
 
686
        src/pshinter/pshalgo1.c, src/pshinter/pshalgo2.c,
 
687
        src/pshinter/pshrec.c,
 
688
 
 
689
        src/psnames/psmodule.c,
 
690
 
 
691
        src/raster/ftraster.c,
 
692
 
 
693
        src/sfnt/sfdriver.c, src/sfnt/ttload.c,
 
694
 
 
695
        src/smooth/ftgrays.c,
 
696
 
 
697
        src/type1/t1afm.c, src/type1/t1driver.c, src/type1/t1gload.c,
 
698
        src/type1/t1load.c, src/type1/t1objs.c, src/type1/t1parse.c,
 
699
 
 
700
        builds/unix/ftconfig.in, builds/vms/ftconfig.h,
 
701
 
 
702
        builds/amiga/src/base/ftdebug.c:
 
703
 
 
704
        Added the new configuration file "ftstdlib.h" used to define
 
705
        aliases for all ISO C library functions used by the engine
 
706
        (e.g. strlen, qsort, setjmp, etc.).
 
707
 
 
708
        This eases the porting of FreeType 2 to environments like
 
709
        XFree86 modules/extensions.
 
710
 
 
711
        Also removed many #include <string.h>, #include <stdlib.h>, etc.
 
712
        from the engine's sources where they are not needed.
 
713
 
 
714
        * src/sfnt/ttpost.c: Use macro name for psnames.h.
 
715
 
 
716
2002-04-12  Vincent Caron  <v.caron@zerodeux.net>
 
717
 
 
718
        * configure, builds/detect.mk: Updated the build system to print
 
719
        a warning message in case GNU Make isn't used to build the library.
 
720
 
 
721
2002-04-11  David Turner  <david@freetype.org>
 
722
 
 
723
        * README, docs/CHANGES, Jamfile.in: Updates for the 2.1.0 release.
 
724
 
 
725
        * docs/FTL.txt: Updated license text to provide a preferred
 
726
        disclaimer and adjust copyright dates/extents.
 
727
 
 
728
        * include/freetype/cache/ftcglyph.h: Removing obsolete (and
 
729
        confusing) comment.
 
730
 
 
731
        * Jamfile.in: New file.
 
732
 
 
733
2002-04-11  Maxim Shemanarev  <mcseemagg@yahoo.com>
 
734
 
 
735
        * src/smooth/ftgrays.c (gray_hline): Minor optimization.
 
736
 
 
737
2002-04-02  Werner Lemberg  <wl@gnu.org>
 
738
 
 
739
        Fixes from the stable branch:
 
740
 
 
741
        * include/freetype/config/ftoption.h (FT_CONFIG_OPTION_OLD_CALCS):
 
742
        Removed.
 
743
        [FT_CONFIG_OPTION_OLD_CALCS]: Removed.
 
744
        * include/freetype/internal/ftcalc.h, src/base/ftcalc.c
 
745
        [FT_CONFIG_OPTION_OLD_CALCS]: Removed.
 
746
 
 
747
        * src/base/fttrigon.c (FT_Vector_Length): Change algorithm to match
 
748
        output of FreeType 1.
 
749
 
 
750
        * src/pshinter/pshglob.c (psh_globals_scale_widths): Fixed a small
 
751
        bug that created un-even stem widths when hinting Postscript fonts.
 
752
 
 
753
        * src/type1/t1driver.c, src/type1/t1parse.c: 16bit fixes.
 
754
 
 
755
2002-04-01  Werner Lemberg  <wl@gnu.org>
 
756
 
 
757
        * src/truetype/ttgload.c: 16bit fixes.
 
758
        (TT_Load_Simple_Glyph): Improve debug messages.
 
759
        (load_truetype_glyph): Remove dead code.
 
760
        * src/truetype/ttinterp.c: 16bit fixes.
 
761
        * src/truetype/ttobjs.c: Ditto.
 
762
 
 
763
        * include/freetype/ftsnames.h, include/freetype/internal/sfnt.h,
 
764
        src/cff/cffload.h, src/psaux/psobjs.h, src/truetype/ttinterp.[ch],
 
765
        src/sfnt/ttpost.h: s/index/idx/.
 
766
 
 
767
2002-03-31  Yao Zhang  <yaoz@vidar.niaaa.nih.gov>
 
768
 
 
769
        * src/truetype/ttobjs.c (TT_Size_Init): Fix typo.
 
770
 
 
771
2002-03-31  Werner Lemberg  <wl@gnu.org>
 
772
 
 
773
        * src/otlayout/otlcommn.c, src/otlayout/otlcommn.h: s/index/idx/.
 
774
        * src/psaux/t1cmap.c: Ditto.
 
775
        * src/sfnt/ttcmap0.c: Ditto.
 
776
 
 
777
        * include/freetype/internal/tttypes.h,
 
778
        include/freetype/internal/sfnt.h (TT_Goto_Table_Func): Renamed to ...
 
779
        (TT_Loader_GotoTableFunc): This.
 
780
        * src/psaux/t1decode.c (T1_Decoder_Parse_Charstrings): Fix debug
 
781
        messages.
 
782
        * src/psnames/psmodule.c (psnames_interface)
 
783
        [!FT_CONFIG_OPTION_ADOBE_GLYPH_LIST]: Fix typo.
 
784
        * src/sfnt/sfdriver.c (get_sfnt_table): 16bit fix.
 
785
        * src/sfnt/ttcmap.c: 16bit fixes (0xFFFF -> 0xFFFFU).
 
786
        * src/sfnt/ttcmap0.c: 16bit fixes.
 
787
        (TT_Build_CMaps): Simplify debug messages.
 
788
        (tt_cmap12_char_next): Fix offset.
 
789
        * src/sfnt/ttload.c (TT_Load_Names, TT_Load_CMap): Fix debug
 
790
        messages.
 
791
        (TT_Load_OS2): 16bit fix.
 
792
 
 
793
2002-03-30  David Turner  <david@freetype.org>
 
794
 
 
795
        * include/freetype/internal/tttypes.h: Adding comments to some of
 
796
        the TT_FaceRec fields.
 
797
 
 
798
        * src/sfnt/ttcmap0.c (TT_Build_CMaps): Removed compiler warnings.
 
799
 
 
800
        * src/sfnt/sfobjs.c (tt_name_entry_ascii_from_{utf16,ucs4,other}:
 
801
        New functions.
 
802
        (tt_face_get_name): Use them to properly extract an ascii font name.
 
803
 
 
804
2002-03-30  Werner Lemberg  <wl@gnu.org>
 
805
 
 
806
        * include/freetype/t1tables.h (t1_blend_max): Fix typo.
 
807
        * src/base/ftstream.c: Simplify FT_ERROR calls.
 
808
        * src/cff/cffdrivr.c (cff_get_glyph_name): Fix debug message.
 
809
 
 
810
        * src/cff/cffobjs.c (CFF_Driver_Init, CFF_Driver_Done)
 
811
        [TT_CONFIG_OPTION_EXTEND_ENGINE]: Removed.
 
812
        * src/cff/sfobjs.c (SFNT_Load_Face)
 
813
        [TT_CONFIG_OPTION_EXTEND_ENGINE]: Ditto.
 
814
        * src/truetype/ttobjs.c (TT_Init_Driver, TT_Done_Driver)
 
815
        [TT_CONFIG_OPTION_EXTEND_ENGINE]: Ditto.
 
816
 
 
817
        * src/truetype/ttdriver.c, src/truetype/ttobjs.c,
 
818
        src/truetype/ttobjs.h: Renaming driver functions to the
 
819
        FT_<Subject>_<Action> scheme:
 
820
 
 
821
          TT_Init_Driver => TT_Driver_Init
 
822
          TT_Done_Driver => TT_Driver_Done
 
823
          TT_Init_Face   => TT_Face_Init
 
824
          TT_Done_Face   => TT_Face_Done
 
825
          TT_Init_Size   => TT_Size_Init
 
826
          TT_Done_Size   => TT_Size_Done
 
827
          TT_Reset_Size  => TT_Size_Reset
 
828
 
 
829
2002-03-29  Werner Lemberg  <wl@gnu.org>
 
830
 
 
831
        * builds/vms/ftconfig.h: Rename LOCAL_DEF and LOCAL_FUNC to
 
832
        FT_LOCAL and FT_LOCAL_DEF, respectively, as with other ftconfig.h
 
833
        files.
 
834
        * builds/unix/ftconfig.in: Add argument to FT_LOCAL and
 
835
        FT_LOCAL_DEF.
 
836
        * src/truetype/ttinterp.c: s/FT_Assert/FT_ASSERT/.
 
837
        * builds/unix/configure.ac: Temporarily deactivate creation of
 
838
        ../../Jamfile.
 
839
        * builds/unix/configure: Updated.
 
840
 
 
841
2002-03-28  KUSANO Takayuki  <AE5T-KSN@asahi-net.or.jp>
 
842
 
 
843
        * src/sfnt/sfdriver.c (get_sfnt_postscript_name): Fix serious typos.
 
844
 
 
845
2002-03-28  Werner Lemberg  <wl@gnu.org>
 
846
 
 
847
        * include/freetype/internal/psaux.h (PSAux_ServiceRec): Fix
 
848
        compiler warnings.
 
849
        * include/freetype/internal/t1types.h (T1_FaceRec): Use `const' for
 
850
        some members.
 
851
        * src/base/ftapi.c (FT_New_Memory_Stream): Fix typos.
 
852
        * src/psaux/t1cmap.c (t1_cmap_std_init, t1_cmap_unicode_init): Add
 
853
        cast.
 
854
        (t1_cmap_{standard,expert,custom,unicode}_class_rec): Use
 
855
        `FT_CALLBACK_TABLE_DEF'.
 
856
        * src/psaux/t1cmap.h: Updated.
 
857
        * src/sfnt/ttcmap0.c (TT_Build_CMaps): Use `ft_encoding_none'
 
858
        instead of zero.
 
859
        * src/type1/t1objs.c (T1_Face_Init): Use casts.
 
860
 
 
861
2002-03-26  David Turner  <david@freetype.org>
 
862
 
 
863
        * src/sfnt/sfdriver.c, src/sfnt/sfobjs.c, src/sfnt/ttcmap0.c:
 
864
        Fixed a small bug in the FT_CMaps support code.
 
865
 
 
866
2002-03-25  David Turner  <david@freetype.org>
 
867
 
 
868
        * src/truetype/ttinterp.c (Norm): Replaced with...
 
869
        (TT_VecLen): This.
 
870
        (TT_MulFix14, TT_DotFix14): New functions.
 
871
        (Project, Dual_Project, Free_Project, Compute_Point_Displacement,
 
872
        Ins_SHPIX, Ins_MIAP, Ins_MIRP): Use them.
 
873
        [FT_CONFIG_OPTION_OLD_CALCS]: Removed all code.
 
874
 
 
875
2002-03-22  David Turner  <david@freetype.org>
 
876
 
 
877
        * src/base/ftobjs.c, src/sfnt/ttcmap0.c, src/type1/t1objs.c:
 
878
        Various fixes to make the FT_CMaps support work correctly (more
 
879
        tests are still needed).
 
880
 
 
881
        * include/freetype/internal/ftobjs.h, src/sfnt/Jamfile,
 
882
        src/sfnt/rules.mk, src/sfnt/sfnt.c, src/sfnt/sfobjs.c,
 
883
        src/sfnt/ttload.c, src/sfnt/ttcmap0.c, src/sfnt/ttcmap0.h: Updated
 
884
        the SFNT charmap support to use FT_CMaps.
 
885
 
 
886
        * include/freetype/fterrdef.h: New file.
 
887
        * include/freetype/fterrors.h: Include it.  It contains all error
 
888
        codes.
 
889
        * include/freetype/config/ftheader.h (FT_ERROR_DEFINITIONS_H): New
 
890
        macro.
 
891
 
 
892
        * include/freetype/internal/ftmemory.h, and a lot of other files:
 
893
        Changed the names of memory macros.  Examples:
 
894
 
 
895
          MEM_Set   => FT_MEM_SET
 
896
          MEM_Copy  => FT_MEM_COPY
 
897
          MEM_Move  => FT_MEM_MOVE
 
898
 
 
899
          ALLOC     => FT_ALLOC
 
900
          FREE      => FT_FREE
 
901
          REALLOC   = >FT_REALLOC
 
902
 
 
903
        FT_NEW was introduced to allocate a new object from a _typed_
 
904
        pointer.
 
905
 
 
906
        Note that ALLOC_ARRAY and REALLOC_ARRAY have been replaced by
 
907
        FT_NEW_ARRAY and FT_RENEW_ARRAY which take _typed_ pointer
 
908
        arguments.
 
909
 
 
910
        This results in _lots_ of sources being changed, but makes the code
 
911
        more generic and less error-prone.
 
912
 
 
913
        * include/freetype/internal/ftstream.h, src/base/ftstream.c,
 
914
        src/cff/cffload.c, src/pcf/pcfread.c, src/sfnt/ttcmap.c,
 
915
        src/sfnt/ttcmap0.c, src/sfnt/ttload.c, src/sfnt/ttpost.c,
 
916
        src/sfnt/ttsbit.c, src/truetype/ttgload.c, src/truetype/ttpload.c,
 
917
        src/winfonts/winfnt.c: Changed the definitions of stream macros.
 
918
        Examples:
 
919
 
 
920
          NEXT_Byte     => FT_NEXT_BYTE
 
921
          NEXT_Short    => FT_NEXT_SHORT
 
922
          NEXT_UShortLE => FT_NEXT_USHORT_LE
 
923
          READ_Short    => FT_READ_SHORT
 
924
          GET_Long      => FT_GET_LONG
 
925
          etc.
 
926
 
 
927
        Also introduced the FT_PEEK_XXXX functions.
 
928
 
 
929
        * src/cff/cffobjs.c (CFF_Build_Unicode_Charmap): Removed commented
 
930
        out function.
 
931
        (find_encoding): Removed.
 
932
        (CFF_Face_Init): Remove charmap support.
 
933
 
 
934
        * include/freetype/config/ftoption.h (FT_CONFIG_OPTION_USE_CMAPS,
 
935
        TT_CONFIG_CMAP_FORMAT{0,2,4,6,8,10,12}): New macros to fine-tune
 
936
        support of cmaps.
 
937
 
 
938
2002-03-21  David Turner  <david@freetype.org>
 
939
 
 
940
        * src/base/ftobjs.c, src/pcf/pcfdriver.c, src/pcf/pcfread.c: Updated
 
941
        to new FT_CMap definitions.
 
942
 
 
943
        * src/psaux/t1cmap.h, src/psaux/t1cmap.c, src/type1/t1cmap.h,
 
944
        src/type1/t1cmap.c: Updating and moving the Type 1 FT_CMap support
 
945
        from "src/type1" to "src/psaux" since it is going to be shared by
 
946
        the Type 1 and CID font drivers.
 
947
 
 
948
        * src/psaux/Jamfile, src/psaux/psaux.c, src/psaux/psauxmod.c,
 
949
        src/psaux/rules.mk, include/freetype/internal/psaux.h: Added support
 
950
        for Type 1 FT_CMaps.
 
951
 
 
952
2002-03-20  David Turner  <david@freetype.org>
 
953
 
 
954
        * src/base/ftgloadr.c (FT_GlyphLoader_CheckSubGlyphs): Fixed a
 
955
        memory allocation bug that was due to un-careful renaming of the
 
956
        FT_SubGlyph type.
 
957
 
 
958
        * src/base/ftdbgmem.c (ft_mem_table_destroy): Fixed a small bug that
 
959
        caused the library to crash with Electric Fence when memory
 
960
        debugging is used.
 
961
 
 
962
        * Renaming stream macros.  Examples:
 
963
 
 
964
          FILE_Skip    => FT_STREAM_SKIP
 
965
          FILE_Read    => FT_STREAM_READ
 
966
          ACCESS_Frame => FT_FRAME_ENTER
 
967
          FORGET_Frame => FT_FRAME_EXIT
 
968
          etc.
 
969
 
 
970
        * src/sfnt/sfdriver.c (get_sfnt_postscript_name): Fixed memory leak.
 
971
 
 
972
        * include/freetype/internal/ftobjs.h: Changing the definition of
 
973
        FT_CMap_CharNextFunc slightly.
 
974
 
 
975
        * src/cff/*.c: Updating CFF type definitions.
 
976
 
 
977
2002-03-14  David Turner  <david@freetype.org>
 
978
 
 
979
        * include/freetype/internal/autohint.h, src/autohint/ahmodule.c,
 
980
        src/base/ftapi.c, src/base/ftobjs.c: Updating the type definitions
 
981
        for the auto-hinter module.
 
982
 
 
983
          FT_AutoHinter_Interface  => FT_AutoHinter_ServiceRec
 
984
          FT_AutoHinter_Interface* => FT_AutoHinter_Service
 
985
          etc.
 
986
 
 
987
          FT_AutoHinter_Get_Global_Func  => FT_AutoHinter_GlobalGetFunc
 
988
          FT_AutoHinter_Done_Global_Func => FT_AutoHinter_GlobalDoneFunc
 
989
          etc.
 
990
 
 
991
        * ahloader.h [_STANDALONE_]: Removed all conditional code.
 
992
 
 
993
        * include/freetype/internal/cfftypes.h, src/cff/*.c: Updating the
 
994
        type definitions of the CFF font driver.
 
995
 
 
996
          CFF_Font  => CFF_FontRec
 
997
          CFF_Font* => CFF_Font
 
998
          etc.
 
999
 
 
1000
        * include/freetype/internal/fnttypes.h, src/winfonts/*.c: Updating
 
1001
        type definitions of the Windows FNT font driver.
 
1002
 
 
1003
        * include/freetype/internal/ftdriver.h,
 
1004
        include/freetype/internal/ftobjs.h, src/base/ftapi.c,
 
1005
        src/base/ftobjs.c, src/cff/cffdrivr.c, src/cff/cffdrivr.h,
 
1006
        src/cid/cidriver.c, src/cid/cidriver.h, src/pcf/pcfdriver.c,
 
1007
        src/pcf/pcfdriver.h, src/truetype/ttdriver.c,
 
1008
        src/truetype/ttdriver.h, src/type1/t1driver.c, src/type1/t1driver.h,
 
1009
        src/winfonts/winfnt.c, src/winfonts/winfnt.h: Updating type
 
1010
        definitions for font drivers.
 
1011
 
 
1012
          FTDriver_initFace      => FT_Face_InitFunc
 
1013
          FTDriver_initGlyphSlot => FT_Slot_InitFunc
 
1014
          etc.
 
1015
 
 
1016
        * src/cid/cidobjs.c (CID_Face_Init): Remove dead code.
 
1017
 
 
1018
        * include/freetype/internal/ftobjs.h, src/base/ftobjs.c: Updated a
 
1019
        few face method definitions:
 
1020
 
 
1021
          FT_PSName_Requester     => FT_Face_GetPostscriptNameFunc
 
1022
          FT_Glyph_Name_Requester => FT_Face_GetGlyphNameFunc
 
1023
          FT_Name_Index_Requester => FT_Face_GetGlyphNameIndexFunc
 
1024
 
 
1025
        * src/base/ftapi.c: New file.  It contains backwards compatibility
 
1026
        functions.
 
1027
 
 
1028
        * include/freetype/internal/psaux.h, src/cid/cidload.c,
 
1029
        src/cidtoken.h, src/psaux/psobjs.c, src/psaux/psobjs.h,
 
1030
        src/psaux/t1decode.c, stc/type1/t1load.c, src/type1/t1tokens.h:
 
1031
        Updated common PostScript type definitions.
 
1032
        Renamed all enumeration values like to uppercase variants:
 
1033
 
 
1034
          t1_token_any      => T1_TOKEN_TYPE_ANY
 
1035
          t1_field_cid_info => T1_FIELD_LOCATION_CID_INFO
 
1036
          etc.
 
1037
 
 
1038
        * include/freetype/internal/psglobals.h: Removed.
 
1039
        * include/freetype/internal/pshints.h, src/pshinter/pshglob.h:
 
1040
        Updated.
 
1041
 
 
1042
        * include/freetype/internal/tttypes.h,
 
1043
        include/freetype/internal/sfnt.h, src/base/ftnames.c,
 
1044
        src/cff/cffdrivr.c, src/sfnt/*.c, src/truetype/*.c: Updated
 
1045
        SFNT/TrueType type definitions.
 
1046
 
 
1047
        * include/freetype/freetype.h, include/freetype/internal/ftgloadr.h:
 
1048
        Updating type defintiions for the glyph loader.
 
1049
 
 
1050
2002-03-13  Antoine Leca  <antoine@oriolnet.com>
 
1051
 
 
1052
        * include/freetype/config/ftoption.h: Changed the automatic
 
1053
        detection of Microsoft C compilers to automatically support 64-bit
 
1054
        integers only since revision 9.00 (i.e. >= Visual C++ 2.0).
 
1055
 
 
1056
2002-03-08  Werner Lemberg  <wl@gnu.org>
 
1057
 
 
1058
        * src/base/ftutil.c (FT_Realloc): Use MEM_Set instead of memset.
 
1059
 
 
1060
2002-03-07  Werner Lemberg  <wl@gnu.org>
 
1061
 
 
1062
        * src/base/ftdbgmem.c (ft_mem_table_resize, ft_mem_table_new,
 
1063
        ft_mem_table_set, ft_mem_debug_alloc, ft_mem_debug_free,
 
1064
        ft_mem_debug_realloc, ft_mem_debug_done, FT_Alloc_Debug,
 
1065
        FT_Realloc_Debug, FT_Free_Debug): Fix compiler warnings.
 
1066
        * src/base/ftcalc.c (FT_MulFix): Ditto.
 
1067
        * src/cff/cffdrivr.c (cff_get_name_index): Ditto.
 
1068
        * src/cff/cffobjs.c (CFF_Size_Get_Global_Funcs, CFF_Size_Init,
 
1069
        CFF_GlyphSlot_Init): Ditto.
 
1070
        * src/cid/cidobjs.c (CID_GlyphSlot_Init,
 
1071
        CID_Size_Get_Globals_Funcs): Ditto.
 
1072
        * src/type1/t1objs.c (T1_Size_Get_Globals_Funcs, T1_GlyphSlot_Init):
 
1073
        Ditto.
 
1074
        * src/pshinter/pshmod.c (pshinter_interface): Use `static const'.
 
1075
        * src/winfonts/winfnt.c (FNT_Get_Next_Char): Remove unused
 
1076
        variables.
 
1077
 
 
1078
        * include/freetype/internal/psaux.h (T1_Builder_Funcs): Renamed
 
1079
        to...
 
1080
        (T1_Builder_FuncsRec): This.
 
1081
        (T1_Builder_Funcs): New typedef.
 
1082
        (PSAux_Interface): Remove compiler warnings.
 
1083
        * src/psaux/psauxmod.c (t1_builder_funcs), src/psaux/psobjs.h
 
1084
        (t1_builder_funcs): Updated.
 
1085
 
 
1086
        * src/pshinter/pshglob.h (PSH_Blue_Align): Replaced with ...
 
1087
        (PSH_BLUE_ALIGN_{NONE,TOP,BOT}): New defines.
 
1088
        (PSH_AlignmentRec): Updated.
 
1089
 
 
1090
        * include/freetype/internal/ftstream.h (GET_Char, GET_Byte): Fix
 
1091
        typo.
 
1092
        * include/freetype/internal/ftgloadr.h (FT_SubGlyph): Ditto.
 
1093
        * src/base/ftstream (FT_Get_Char): Rename to...
 
1094
        (FT_Stream_Get_Char): This.
 
1095
 
 
1096
        * src/base/ftnames.c (FT_Get_Sfnt_Name): s/index/idx/ -- `index' is
 
1097
        a built-in function in gcc, causing warning messages with gcc 3.0.
 
1098
        * src/autohint/ahglyph.c (ah_outline_load): Ditto.
 
1099
        * src/autohint/ahglobal.c (ah_hinter_compute_blues): Ditto.
 
1100
        * src/cache/ftcmanag.c (ftc_family_table_alloc,
 
1101
        ftc_family_table_free, FTC_Manager_Done, FTC_Manager_Register_Cache):
 
1102
        Ditto.
 
1103
        * src/cff/cffload.c (cff_new_index, cff_done_index,
 
1104
        cff_explicit_index, CFF_Access_Element, CFF_Forget_Element,
 
1105
        CFF_Get_Name, CFF_Get_String, CFF_Load_SubFont, CFF_Load_Font,
 
1106
        CFF_Done_Font): Ditto.
 
1107
        * src/psaux/psobjs.c (PS_Table_Add, PS_Parser_LoadField): Ditto.
 
1108
        * src/psaux/t1decode.c (T1_Decoder_Parse_Charstrings): Ditto.
 
1109
        * src/pshinter/pshrec.c (ps_mask_test_bit, ps_mask_clear_bit,
 
1110
        ps_mask_set_bit, ps_dimension_add_t1stem, ps_hints_t1stem3,
 
1111
        * src/pshinter/pshalgo1.c (psh1_hint_table_record,
 
1112
        psh1_hint_table_record_mask, psh1_hint_table_activate_mask): Ditto.
 
1113
        * src/pshinter/pshalgo2.c (psh2_hint_table_record,
 
1114
        psh2_hint_table_record_mask, psh2_hint_table_activate_mask): Ditto.
 
1115
        * src/sfnt/ttpost.c (Load_Format_20, Load_Format_25,
 
1116
        TT_Get_PS_Name): Ditto.
 
1117
        * src/truetype/ttgload.c (TT_Get_Metrics, Get_HMetrics,
 
1118
        load_truetype_glyph): Ditto.
 
1119
        * src/type1/t1load.c (parse_subrs, T1_Open_Face): Ditto.
 
1120
        * src/type1/t1afm.c (T1_Get_Kerning): Ditto.
 
1121
        * include/freetype/cache/ftcmanag.h (ftc_family_table_free): Ditto.
 
1122
 
 
1123
2002-03-06  David Turner  <david@freetype.org>
 
1124
 
 
1125
        * src/type1/t1objs.c (T1_Face_Init), src/cid/cidobjs.c
 
1126
        (CID_Face_Init): Fixed another bug related to the
 
1127
        ascender/descender/text height of Postscript fonts.
 
1128
 
 
1129
        * src/pshinter/pshalgo2.c (print_zone): Renamed to ...
 
1130
        (psh2_print_zone): This.
 
1131
        * src/pshinter/pshalgo1.c (print_zone): Renamed to ...
 
1132
        (psh1_print_zone): This.
 
1133
 
 
1134
        * include/freetype/freetype.h, include/freetype/internal/ftobjs.h,
 
1135
        src/base/ftobjs.c: Adding the new FT_Library_Version API to return
 
1136
        the library's current version in dynamic links.
 
1137
        * src/base/ftinit.c (FT_Init_FreeType): Updated.
 
1138
 
 
1139
2002-03-06  Werner Lemberg  <wl@gnu.org>
 
1140
 
 
1141
        * src/pshinter/pshglob.h (PSH_DimensionRec): s/std/stdw/.
 
1142
        * src/pshinter/pshglob.c (psh_global_scale_widths,
 
1143
        psh_dimension_snap_width, psh_globals_destroy, psh_globals_new):
 
1144
        Ditto.
 
1145
 
 
1146
2002-03-05  David Turner  <david@freetype.org>
 
1147
 
 
1148
        * src/type1/t1objs.c (T1_Face_Init), src/cff/cffobjs.c
 
1149
        (CFF_Face_Init), src/cid/cidobjs.c (CID_Face_Init): Removing the bug
 
1150
        that returned global BBox values in 16.16 fixed format (instead of
 
1151
        integer font units).
 
1152
 
 
1153
        * src/cid/cidriver.c (cid_get_postscript_name): Fixed a bug that
 
1154
        caused the CID driver to return Postscript font names with a leading
 
1155
        slash ("/") as in "/MOEKai-Regular".
 
1156
 
 
1157
        * src/sfnt/ttload.c (TT_Load_Names), src/sfnt/sfobjs.c (Get_Name),
 
1158
        src/sfnt/sfdriver.c (get_sfnt_postscript_name): Fixed the loader so
 
1159
        that it accepts broken fonts like "foxjump.ttf", which made FreeType
 
1160
        crash when trying to load them.
 
1161
 
 
1162
        Also improved the name table parser to be able to load
 
1163
        Windows-encoded entries before Macintosh or Unicode ones, since it
 
1164
        seems some fonts don't have reliable values here anyway.
 
1165
 
 
1166
        * include/freetype/internal/psnames.h: Add typedef for
 
1167
        `PSNames_Service'.
 
1168
 
 
1169
2002-03-05  Werner Lemberg  <wl@gnu.org>
 
1170
 
 
1171
        * builds/unix/aclocal.m4, builds/unix/ltmain.sh: Update to libtool
 
1172
        1.4.2.
 
1173
        Apply a small patch for AIX to make shared libraries work (this
 
1174
        patch is already in the CVS version of libtool).
 
1175
 
 
1176
        * builds/unix/config.sub, builds/unix/config.guess: Updated to
 
1177
        recent versions.
 
1178
 
 
1179
        * builds/unix/configure.ac: Fix typo
 
1180
        (AC_CONFIG_FILE->AC_CONFIG_FILES).
 
1181
 
 
1182
        * builds/unix/configure: Regenerated.
 
1183
 
 
1184
2002-02-28  David Turner  <david@freetype.org>
 
1185
 
 
1186
        * include/freetype/ftconfig.h: Changed `FT_LOCAL xxxx' to
 
1187
        `FT_LOCAL( xxxx )' everywhere in the source.  The same goes for
 
1188
        `FT_LOCAL_DEF xxxx' which is translated to `FT_LOCAL_DEF( xxxxx )'.
 
1189
 
 
1190
        * include/freetype/freetype.h (FREETYPE_MINOR, FREETYPE_PATCH):
 
1191
        Changing version to 2.1.0 to indicate an unstable branch.
 
1192
        Added the declarations of FT_Get_First_Char and FT_Get_Next_Char.
 
1193
 
 
1194
        * src/base/ftobjs.c: Implement FT_Get_First_Char and
 
1195
        FT_Get_Next_Char.
 
1196
 
 
1197
        * include/freetype/t1tables.h: Renaming structure types.  This
 
1198
 
 
1199
          typedef  T1_Struct_
 
1200
          {
 
1201
          } T1_Struct;
 
1202
 
 
1203
        becomes
 
1204
 
 
1205
          typedef  PS_StructRec_
 
1206
          {
 
1207
          } PS_StructRec, *PS_Struct;
 
1208
 
 
1209
          typedef PS_StructRec  T1_Struct;  /* backwards-compatibility */
 
1210
 
 
1211
        Hence, we increase the coherency of the source code by effectively
 
1212
        using the `Rec' prefix for structure types.
 
1213
 
 
1214
2002-02-27  David Turner  <david@freetype.org>
 
1215
 
 
1216
        * src/sfnt/ttload.c (TT_Load_Names): Simplifying and securing the
 
1217
        names table loader.  Invalid individual name entries are now handled
 
1218
        correctly.  This allows the loading of very buggy fonts like
 
1219
        "foxjump.ttf" without allocating tons of memory and causing crashes.
 
1220
 
 
1221
        * src/otlayout/otlcommon.h, src/otlayout/otlcommon.c: Adding (still
 
1222
        experimental) code for OpenType Layout tables validation and
 
1223
        parsing.
 
1224
 
 
1225
        * src/type1/t1cmap.h, src/type1/t1cmap.c: Adding (still
 
1226
        experimental) code for Type 1 charmap processing.
 
1227
 
 
1228
        * src/sfnt/ttcmap0.c: New file.  It contains a new, still
 
1229
        experimental SFNT charmap processing support.
 
1230
 
 
1231
        * include/freetype/internal/ftobjs.h: Adding validation support as
 
1232
        well as internal charmap object definitions (FT_CMap != FT_CharMap).
 
1233
 
 
1234
2002-02-24  David Turner  <david@freetype.org>
 
1235
 
 
1236
        * Renaming stream functions to the FT_<Subject>_<Action> scheme:
 
1237
 
 
1238
          FT_Seek_Stream    => FT_Stream_Seek
 
1239
          FT_Skip_Stream    => FT_Stream_Skip
 
1240
          FT_Read_Stream    => FT_Stream_Read
 
1241
          FT_Read_Stream_At => FT_Stream_Read_At
 
1242
          FT_Access_Frame   => FT_Stream_Enter_Frame
 
1243
          FT_Forget_Frame   => FT_Stream_Exit_Frame
 
1244
          FT_Extract_Frame  => FT_Stream_Extract_Frame
 
1245
          FT_Release_Frame  => FT_Stream_Release_Frame
 
1246
          FT_Get_XXXX       => FT_Stream_Get_XXXX
 
1247
          FT_Read_XXXX      => FT_Stream_Read_XXXX
 
1248
 
 
1249
          FT_New_Stream( filename, stream ) =>
 
1250
            FT_Stream_Open( stream, filename )
 
1251
 
 
1252
            (The function doesn't create the FT_Stream structure, it simply
 
1253
            initializes it for reading.)
 
1254
 
 
1255
          FT_New_Memory_Stream( library, FT_Byte*  base, size, stream ) =>
 
1256
            FT_Stream_Open_Memory( stream, const FT_Byte* base, size )
 
1257
 
 
1258
          FT_Done_Stream  => FT_Stream_Close
 
1259
          FT_Stream_IO    => FT_Stream_IOFunc
 
1260
          FT_Stream_Close => FT_Stream_CloseFunc
 
1261
 
 
1262
          ft_close_stream => ft_ansi_stream_close (in base/ftsystem.c only)
 
1263
          ft_io_stream    => ft_ansi_stream_io    (in base/ftsystem.c only)
 
1264
 
 
1265
        * src/base/ftutil.c: New file.  Contains all memory and list
 
1266
        management code (previously in "ftobjs.c" and "ftlist.c",
 
1267
        respectively).
 
1268
 
 
1269
        * include/freetype/internal/ftobjs.h: Moving all code related to
 
1270
        glyph loaders to ...
 
1271
        * include/freetype/"internal/ftgloadr.h: This new file.
 
1272
        "FT_GlyphLoader" is now a pointer to the structure
 
1273
        "FT_GlyphLoaderRec".
 
1274
        (ft_glyph_own_bitmap): Renamed to ...
 
1275
        (FT_GLYPH_OWN_BITMAP): This.
 
1276
        * src/base/ftobjs.c: Moving all code related to glyph loaders
 
1277
        to ...
 
1278
        * src/base/ftgloadr.c: This new file.
 
1279
 
 
1280
2002-02-22  Werner Lemberg  <wl@gnu.org>
 
1281
 
 
1282
        * include/freetype/internal/ftdebug.h (FT_Trace): Remove comma in
 
1283
        enum to avoid compiler warnings.
 
1284
 
 
1285
2002-02-21  David Turner  <david@freetype.org>
 
1286
 
 
1287
        Modified the debug sub-system initialization.  Trace levels can now
 
1288
        be specified within the "FT2_DEBUG" environment variable.  See the
 
1289
        comments within "ftdebug.c" for more details.
 
1290
 
 
1291
        * src/base/ftdebug.c: (FT_SetTraceLevel): Removed.
 
1292
        (ft_debug_init): New function.
 
1293
        (ft_debug_dummy): Removed.
 
1294
        Updated to changes in ftdebug.h
 
1295
 
 
1296
        * include/freetype/internal/ftdebug.h: Always define
 
1297
        FT_DEBUG_LEVEL_ERROR if FT_DEBUG_LEVEL_TRACE is defined.
 
1298
        (FT_Assert): Renamed to ...
 
1299
        (FT_ASSERT): This.
 
1300
        Some stuff from ftdebug.h has been moved to ...
 
1301
 
 
1302
        * include/freetype/internal/fttrace.h: New file, to define the trace
 
1303
        levels used for debugging.  It is used both to define enums and
 
1304
        toggle names for FT2_DEBUG.
 
1305
 
 
1306
        * include/freetype/internal/internal.h: Updated.
 
1307
 
 
1308
        * src/base/ftobjs.c, src/base/ftstream.c: Updated.
 
1309
 
 
1310
        * include/freetype/internal/ftextend.h, src/base/ftextend.c:
 
1311
        Removed.  Both files are now completely obsolete.
 
1312
        * src/base/Jamfile, src/base/rules.mk: Updated.
 
1313
 
 
1314
        * include/freetype/fterrors.h: Adding "#undef FT_ERR_CAT" and
 
1315
        `#undef FT_ERR_XCAT" to avoid warnings with certain compilers (like
 
1316
        LCC).
 
1317
 
 
1318
        * src/pshinter/pshalgo2.c (print_zone): Renamed to ...
 
1319
        (psh2_print_zone): This to avoid errors during compilation of debug
 
1320
        library.
 
1321
 
 
1322
        * src/smooth/ftgrays.c (FT_COMPONENT): Change definition to as
 
1323
        `trace_smooth'.
 
1324
 
 
1325
2002-02-20  David Turner  <david@freetype.org>
 
1326
 
 
1327
        * README: Adding "devel@freetype.org" address for bug reports.
 
1328
 
 
1329
2002-02-20  Werner Lemberg  <wl@gnu.org>
 
1330
 
 
1331
        * builds/unix/install.mk (check): New dummy target.
 
1332
        (.PHONY): Add it.
 
1333
 
 
1334
2002-02-19  Werner Lemberg  <wl@gnu.org>
 
1335
 
 
1336
        * builds/freetype.mk (FT_CFLAGS): Use $(INCLUDE_FLAGS) first.
 
1337
 
 
1338
        * src/cache/ftccache.c (ftc_cache_resize): Mark `error' as unused
 
1339
        to avoid compiler warning.
 
1340
        * src/cff/cffload.c (CFF_Get_String): Ditto.
 
1341
        * src/cff/cffobjs.c (CFF_StrCopy): Ditto.
 
1342
        * src/psaux/psobjs.c (PS_Table_Done): Ditto.
 
1343
        * src/pcf/pcfread.c (pcf_seek_to_table_type): Ditto.
 
1344
        * src/sfnt/sfdriver.c (get_sfnt_postscript_name): Ditto.
 
1345
        (pcf_get_bitmaps): The same for `sizebitmaps'.
 
1346
        * src/psaux/t1decode.c (T1_Decode_Parse_Charstrings): The same for
 
1347
        `orig_y'.
 
1348
        (t1operator_seac): Comment out more dead code.
 
1349
        * src/pshinter/pshalgo2.c (ps2_hints_apply): Add `DEBUG_HINTER'
 
1350
        conditional.
 
1351
        * src/truetype/ttgload.c (TT_Process_Simple_Glyph,
 
1352
        load_truetype_glyph): Add `TT_CONFIG_OPTION_BYTECODE_INTERPRETER'
 
1353
        conditional.
 
1354
 
 
1355
2002-02-18  Werner Lemberg  <wl@gnu.org>
 
1356
 
 
1357
        * src/autohint/ahglyph.c (ah_outline_link_segments): Remove unused
 
1358
        variables.
 
1359
        * src/autohint/ahhint.c (ah_align_serif_edge): Use FT_UNUSED instead
 
1360
        of UNUSED.
 
1361
        * src/autohint/ahmodule.c (ft_autohinter_reset): Ditto.
 
1362
        * src/pshinter/pshrec.c (ps_mask_table_merge): Fix typo in variable
 
1363
        swapping code.
 
1364
        * src/pshinter/pshglob.h (PSH_Blue_Align): Add PSH_BLUE_ALIGN_NONE.
 
1365
        * src/pshinter/pshglob.c (psh_blues_snap_stem): Use it.
 
1366
        * src/pshinter/pshalgo1.c (psh1_hint_table_optimize): Ditto.
 
1367
        * src/pshinter/pshalgo2.c (psh2_hint_align): Ditto.
 
1368
        * include/freetype/internal/ftobjs.h (UNUSED): Removed.
 
1369
 
 
1370
2002-02-10  Roberto Alameda  <ojancano@geekmail.de>
 
1371
 
 
1372
        Add support for ISOLatin1 PS encoding.
 
1373
 
 
1374
        * include/freetype/freetype.h (ft_encoding_latin_1): New tag
 
1375
        (`lat1').
 
1376
        * include/freetype/internal/t1types.h (T1_Encoding_Type): Add
 
1377
        `t1_encoding_isolatin1'.
 
1378
        * src/type1/t1driver.c (Get_Char_Index, Get_Next_Char): Handle
 
1379
        ft_encoding_latin_1.
 
1380
        * src/type1/t1load.c (parse_encoding): Handle `ISOLatin1Encoding'.
 
1381
        * src/type1/t1objs.c (T1_Face_Init): Handle `t1_encoding_isolatin1'.
 
1382
 
 
1383
2002-02-09  Werner Lemberg  <wl@gnu.org>
 
1384
 
 
1385
        * README: Fix typo.
 
1386
        * docs/CHANGES: Minor fixes.
 
1387
 
 
1388
 
 
1389
        * Version 2.0.8 released.
 
1390
        =========================
 
1391
 
 
1392
 
 
1393
2002-02-08  David Turner  <david@freetype.org>
 
1394
 
 
1395
        * docs/CHANGES: Updating for 2.0.8.
 
1396
 
 
1397
        * include/freetype/freetype.h: Setting `PATCH_LEVEL' to 8 and
 
1398
        removing `FT_Get_Next_Char' from the API (temporarily).
 
1399
 
 
1400
        * include/freetype/freetype.h: Adding comments to FT_Get_Next_Char;
 
1401
        note that this function might temporarily be removed for the 2.0.8
 
1402
        release.
 
1403
 
 
1404
2002-02-07  David Turner  <david@freetype.org>
 
1405
 
 
1406
        * src/pcf/pcfread.c (pcf_load_font): Removed immature support of
 
1407
        the AVERAGE_WIDTH property.
 
1408
 
 
1409
2002-02-06  David Turner  <david@freetype.org>
 
1410
 
 
1411
        * src/sfnt/sfobjs.c (SFNT_Load_Face): Since many fonts embedded in
 
1412
        PDF documents do not include 'cmap', 'post' and 'name' tables, the
 
1413
        SFNT face loader has been changed to not immediately report an
 
1414
        error if these are not present.
 
1415
 
 
1416
        Note that the specification _requires_ these tables, but Adobe
 
1417
        seems to ignore it completely.
 
1418
 
 
1419
        * src/sfnt/ttcmap.c: Removing compiler warnings.
 
1420
 
 
1421
        * src/pcf/pcfread.c (pcf_read_TOC): Use FT_UInt.
 
1422
        (pcf_parse_metric, pcf_parse_compressed_metric): Removed.  Code
 
1423
        is now in ...
 
1424
        (pcf_get_metric): Here.
 
1425
        (pcfSeekToType): Renamed to ...
 
1426
        (pcf_seek_to_table_type): This.
 
1427
        Use FT_Int.
 
1428
        (pcfHasType): Renamed to ...
 
1429
        (pcf_has_table_type): This.
 
1430
        Use FT_Int.
 
1431
        (find_property): Renamed to ...
 
1432
        (pcf_find_property): This.
 
1433
        Use FT_Int.
 
1434
        (pcf_get_bitmaps, pcf_get_encodings): Handle invalid PCF fonts
 
1435
        better (delaying format checks out of FT_Access_Frame ..
 
1436
        FT_Forget_Frame blocks to avoid leaving the stream in an incorrect
 
1437
        state when encountering an invalid PCF font).
 
1438
 
 
1439
        * src/pcf/pcfdriver.c (PCF_Done_Face): Renamed to ...
 
1440
        (PCF_Face_Done): This.
 
1441
        (PCF_Init_Face): Renamed to ...
 
1442
        (PCF_Face_Init): This.
 
1443
        (PCF_Get_Char_Index): Renamed to ...
 
1444
        (PCF_Char_Get_Index): This.
 
1445
        (PCF_Get_Next_Char): Renamed to ...
 
1446
        (PCF_Char_Get_Next): This.
 
1447
        (pcf_driver_class): Updated.
 
1448
 
 
1449
        * src/pcf/pcf.h (PCF_Done_Face): Removed.
 
1450
 
 
1451
2002-02-06  Detlef W�rkner  <TetiSoft@apg.lahn.de>
 
1452
 
 
1453
        * src/pcf/pcfdriver.c (FT_Done_Face): Fixed small memory leak.
 
1454
 
 
1455
        * src/pcf/pcfread.c (pcf_load_font): Now handles the "AVERAGE_WIDTH"
 
1456
        property to return correct character pixel (width/height) pairs for
 
1457
        embedded bitmaps.
 
1458
 
 
1459
2002-02-04  Keith Packard  <keithp@keithp.com>
 
1460
 
 
1461
        Adding the function `FT_Get_Next_Char', doing the obvious thing
 
1462
        w.r.t. the selected charmap.
 
1463
 
 
1464
        * include/freetype/freetype.h: Add prototype.
 
1465
        * include/freetype/internal/ftdriver.h: Add `FTDriver_getNextChar'
 
1466
        typedef.
 
1467
        (FT_Driver_Class): Use it.
 
1468
        * include/freetype/internal/psnames.h: Add `PS_Next_Unicode_Func'
 
1469
        typedef.
 
1470
        (PSNames_Interface): Use it.
 
1471
        * include/freetype/internal/tttypes.h: Add `TT_CharNext_Func'
 
1472
        typedef.
 
1473
        (TT_CMapTable): Use it.
 
1474
 
 
1475
        * src/base/ftobjs.c (FT_Get_Next_Char): New function, implementing
 
1476
        high-level API.
 
1477
        * src/cff/cffdrivr.c (cff_get_next_char): New function.
 
1478
        (cff_driver_class): Add it.
 
1479
        * src/cid/cidriver.c (Cid_Get_Next_Char): New function.
 
1480
        (t1cid_driver_class): Add it.
 
1481
        * src/pcf/pcfdriver.c (PCF_Get_Next_Char): New function.
 
1482
        (pcf_driver_class): Add it.
 
1483
        * src/psnames/psmodule.c (PS_Next_Unicode): New function.
 
1484
        (psnames_interface): Add it.
 
1485
        * src/sfnt/ttcmap.c (code_to_next0, code_to_next2, code_to_next4,
 
1486
        code_to_next6, code_to_next_8_12, code_to_next_10): New auxiliary
 
1487
        functions.
 
1488
        (TT_CharMap_Load): Use them.
 
1489
        * src/truetype/ttdriver.c (Get_Next_Char): New function.
 
1490
        (tt_driver_class): Add it.
 
1491
        * src/type1/t1driver.c (Get_Next_Char): New function.
 
1492
        (t1_driver_class): Add it.
 
1493
        * src/winfnt/winfnt.c (FNT_Get_Next_Char): New function.
 
1494
        (winfnt_driver_class): Add it.
 
1495
 
 
1496
        * src/pcf/pcfread.c (pcf_load_font): For now, report Unicode for
 
1497
        Unicode and Latin 1 encodings.
 
1498
 
 
1499
2002-02-02  Keith Packard  <keithp@keithp.com>
 
1500
 
 
1501
        * builds/unix/freetype-config.in: Add missing `fi'.
 
1502
 
 
1503
 
 
1504
        * Version 2.0.7 released.
 
1505
        =========================
 
1506
 
 
1507
 
 
1508
2002-02-01  David Turner  <david@freetype.org>
 
1509
 
 
1510
        * include/freetype/freetype.h: Increasing FREETYPE_PATCH to 7
 
1511
        for the new release.
 
1512
 
 
1513
2002-01-31  David Turner  <david@freetype.org>
 
1514
 
 
1515
        * README, README.UNX, docs/CHANGES: Updating documentation for the
 
1516
        2.0.7 release.
 
1517
 
 
1518
2002-01-30  David Turner  <david@freetype.org>
 
1519
 
 
1520
        * INSTALL: Moved to ...
 
1521
        * docs/INSTALL: Here to avoid conflicts with the "install" script on
 
1522
        Windows, where the filesystem doesn't preserve case.
 
1523
 
 
1524
2002-01-29  David Turner  <david@freetype.org>
 
1525
 
 
1526
        * configure: Fixed the script.  It previously didn't accept more
 
1527
        than one argument correctly.  For example, when typing:
 
1528
 
 
1529
          ./configure --disable-shared --disable-nls
 
1530
 
 
1531
        the "--disable-nls" was incorrectly sent to the "make" program.
 
1532
 
 
1533
2002-01-29  Werner Lemberg  <wl@gnu.org>
 
1534
 
 
1535
        * README.UNX: Fix typo.
 
1536
        * builds/unix/install.mk (uninstall): Fix library name for libtool.
 
1537
 
 
1538
2002-01-28  Francesco Zappa Nardelli  <Francesco.Zappa.Nardelli@ens.fr>
 
1539
 
 
1540
        * src/pcf/pcfdriver.c (PCF_Done_Face): Fix incorrect destruction of
 
1541
        the face object (face->toc.tables, face->root.family_name,
 
1542
        face->root.available_size, face->charset_encoding,
 
1543
        face->charset_registry are now freed).  Thanks to Niels Moseley.
 
1544
 
 
1545
2002-01-28  Roberto Alameda  <ojancano@geekmail.de>
 
1546
 
 
1547
        * src/type1/t1load.c (parse_encoding): Set `loader->num_chars'.
 
1548
 
 
1549
2002-01-28  Werner Lemberg  <wl@gnu.org>
 
1550
 
 
1551
        * src/type1/t1load.c (parse_subrs, parse_charstrings): Use copy
 
1552
        of `base' string for decrypting to not modify the original data.
 
1553
        Based on a patch by Jakub Bogusz <qboosh@pld.org.pl>.
 
1554
 
 
1555
2002-01-27  Giuliano Pochini  <pochini@shiny.it>
 
1556
 
 
1557
        * src/smooth/ftgrays.c (gray_render_scanline): Fix bug which caused
 
1558
        bad rendering of thin lines (less than one pixel thick).
 
1559
 
 
1560
2002-01-25  Werner Lemberg  <wl@gnu.org>
 
1561
 
 
1562
        * src/cff/cffdrivr.c (cff_get_name_index): Make last patch work
 
1563
        actually.
 
1564
 
 
1565
2002-01-25  Martin Zinser  <zinser@decus.de>
 
1566
 
 
1567
        * src/cache/ftccache.c (ftc_node_done, ftc_node_destroy): Fix
 
1568
        compilation warnings.
 
1569
        * src/base/descrip.mms (OBJS): Add `ftmm.obj'.
 
1570
        * src/cache/descrip.mms (ftcache.obj): Dependencies added.
 
1571
 
 
1572
2002-01-25  WANG Yi  <wangyi@founder.com.cn>
 
1573
 
 
1574
        * src/cff/cffdrivr.c (cff_get_name_index): Fix deallocation bug.
 
1575
 
 
1576
2002-01-21  Antoine Leca  <Antoine-Freetype@Leca-Marti.org>
 
1577
 
 
1578
        * docs/PATENTS: Typo fixed (thanks to Detlef "Hawkeye" W�rkner) in
 
1579
        the URL for the online resource.
 
1580
 
 
1581
2002-01-18  Ian Brown  <ian.brown@printsoft.de>
 
1582
 
 
1583
        * builds/win32/ftdebug.c: New file.
 
1584
        * builds/win32/visualc/freetype.dsp: Updated.
 
1585
 
 
1586
2002-01-18  Detlef W�rkner  <TetiSoft@apg.lahn.de>
 
1587
 
 
1588
        * builds/amiga/src/base/ftsystem.c: Updated for AmigaOS 3.9.
 
1589
        * builds/amiga/README: Updated.
 
1590
 
 
1591
2002-01-18  Ian Brown  <ian.brown@printsoft.de>
 
1592
 
 
1593
        * builds/win32/visualc/freetype.dsp: Updated.
 
1594
 
 
1595
2002-01-13  Werner Lemberg  <wl@gnu.org>
 
1596
 
 
1597
        * builds/unix/freetype2.a4: The script was still buggy.
 
1598
        * builds/unix/freetype-config.in: Make it really work for any install
 
1599
        prefix.
 
1600
 
 
1601
2002-01-10  Werner Lemberg  <wl@gnu.org>
 
1602
 
 
1603
        * builds/unix/freetype2.a4: Fix some serious bugs.
 
1604
 
 
1605
2002-01-09  David Turner  <david@freetype.org>
 
1606
 
 
1607
        * builds/unix/configure.ac: Build top-level Jamfile.
 
1608
 
 
1609
2002-01-09  Maxim Shemanarev  <mcseemagg@yahoo.com>
 
1610
 
 
1611
        * src/smooth/ftgrays.c (gray_render_line): Small optimization to
 
1612
        the smooth anti-aliased renderer that deals with vertical segments.
 
1613
        This results in a 5-7% speedup in rendering speed.
 
1614
 
 
1615
2002-01-08  David Turner  <david@freetype.org>
 
1616
 
 
1617
        Added some wrapper scripts to make the installation more
 
1618
        Unix-friendly.
 
1619
 
 
1620
        * configure, install: New files.
 
1621
 
 
1622
        * INSTALL, README.UNX: Updated installation documentation to use the
 
1623
        new 'configure' and 'install' scripts.
 
1624
 
 
1625
2002-01-07  David Turner  <david@freetype.org>
 
1626
 
 
1627
 
 
1628
        * Version 2.0.6 released.
 
1629
        =========================
 
1630
 
 
1631
 
 
1632
        * docs/BUGS, docs/CHANGES: Updating documentation for 2.0.6 release.
 
1633
 
 
1634
        * src/tools/docmaker.py: Fixed HTML quoting in sources.
 
1635
        (html_format): Replaced with ...
 
1636
        (html_quote): New function.
 
1637
        (html_quote0): New function.
 
1638
        (DocCode::dump_html: Small improvement.
 
1639
        (DocParagraph::dump, DocBlock::html): Use html_quote0 and html_quote.
 
1640
 
 
1641
        * include/freetype/config/ftoption.h: Setting default options for
 
1642
        a release build (debugging off, bytecode interpreter off).
 
1643
 
 
1644
        * src/base/ftobjs.c, src/base/ftoutln.c, src/cache/ftccmap.c,
 
1645
        src/cff/cffload.c, src/cff/cffobjs.c, src/pshinter/pshalgo2.c,
 
1646
        src/sfnt/ttload.c, src/sfnt/ttsbit.c: Removing small compiler
 
1647
        warnings (in pedantic compilation modes).
 
1648
 
 
1649
2002-01-05  David Turner  <david@freetype.org>
 
1650
 
 
1651
        * src/autohint/ahhint.c (ah_align_linked_edge): Modified computation
 
1652
        of auto-hinted stem widths; this avoids color fringes in
 
1653
        "ClearType-like" rendering.
 
1654
 
 
1655
        * src/truetype/ttgload.c (TT_Load_Glyph_Header,
 
1656
        TT_Load_Simple_Glyph, TT_Load_Composite_Glyph, load_truetype_glyph):
 
1657
        Modified the TrueType loader to make it more paranoid; this avoids
 
1658
        nasty buffer overflows in the case of invalid glyph data (as
 
1659
        encountered in the output of some buggy font converters).
 
1660
 
 
1661
2002-01-04  David Turner  <david@freetype.org>
 
1662
 
 
1663
        * README.UNX: Added special README file for Unix users.
 
1664
 
 
1665
        * builds/unix/ftsystem.c (FT_New_Stream): Fixed typo.
 
1666
 
 
1667
        * src/base/ftobjs.c: Added #include FT_OUTLINE_H to get rid
 
1668
        of compiler warnings.
 
1669
 
 
1670
        * src/base/ftoutln.c (FT_Outline_Check): Remove compiler warning.
 
1671
 
 
1672
2002-01-03  Werner Lemberg  <wl@gnu.org>
 
1673
 
 
1674
        * src/type1/t1objs.c (T1_Face_Init): Add cast to avoid compiler
 
1675
        warning.
 
1676
 
 
1677
2002-01-03  Keith Packard  <keithp@keithp.com>
 
1678
 
 
1679
        * builds/unix/ftsystem.c (FT_New_Stream): Added a fix to ensure that
 
1680
        all FreeType input streams are closed in child processes of a "fork"
 
1681
        on Unix systems.  This is important to avoid (potential) access
 
1682
        control issues.
 
1683
 
 
1684
2002-01-03  David Turner  <david@freetype.org>
 
1685
 
 
1686
        * src/type1/t1objs.c (T1_Face_Init): Fixed a bug that crashed the
 
1687
        library when dealing with certain weird fonts like "Stalingrad", in
 
1688
        "sadn.pfb" (this font has no full font name entry).
 
1689
 
 
1690
        * src/base/ftoutln.c, include/freetype/ftoutln.h (FT_Outline_Check):
 
1691
        New function to check the consistency of outline data.
 
1692
 
 
1693
        * src/base/ftobjs.c (FT_Load_Glyph): Use `FT_Outline_Check' to
 
1694
        ensure that loaded glyphs are valid.  This allows certain fonts like
 
1695
        "tt1095m_.ttf" to be loaded even though it appears they contain
 
1696
        really funky glyphs.
 
1697
 
 
1698
        There still is a bug there, though.
 
1699
 
 
1700
        * src/truetype/ttgload.c (load_truetype_glyph): Fix error condition.
 
1701
 
 
1702
2001-12-30  David Turner  <david@freetype.org>
 
1703
 
 
1704
        * src/autohint/ahhint.c (ah_hinter_load): Fix advance width
 
1705
        computation of auto-hinted glyphs.  This noticeably improves the
 
1706
        spacing of letters in KDE and Gnome.
 
1707
 
 
1708
2001-12-25  Antoine Leca <Antoine-Freetype@Leca-Marti.org>
 
1709
 
 
1710
        * builds/dos/detect.mk: Correcting the order for Borland compilers:
 
1711
        16-bit bcc was never selected, always overridden by 32-bit bcc32.
 
1712
 
 
1713
2001-12-22  Francesco Zappa Nardelli  <Francesco.Zappa.Nardelli@ens.fr>
 
1714
 
 
1715
        * src/pfc/pcfread.c (pcf_load_font): Handle property `POINT_SIZE'
 
1716
        and fix incorrect computation of `available_sizes'.
 
1717
 
 
1718
2001-12-22  David Turner  <david@freetype.org>
 
1719
 
 
1720
        * src/autohint/ahhint.c (ah_hinter_load): Auto-hinted glyphs had an
 
1721
        incorrect glyph advance in the case of mono-width fonts (like
 
1722
        Courier, Andale Mono, and others).
 
1723
 
 
1724
2001-12-22  Detlef W�rkner  <TetiSoft@apg.lahn.de>
 
1725
 
 
1726
        * builds/amiga/*: Adaptations to latest changes.
 
1727
        Support added for MorphOS.
 
1728
 
 
1729
2001-12-22  Werner Lemberg  <wl@gnu.org>
 
1730
 
 
1731
        * src/pshinter/pshrec.c (FT_COMPONENT): Redefine to `trace_pshrec'.
 
1732
        (ps_mask_table_merge, ps_hints_open, ps_hints_stem,
 
1733
        ps_hints_t1stem3, ps_hints_t2mask, ps_hints_t2counter): Fix
 
1734
        FT_ERROR messages.
 
1735
        * src/pshinter/pshalgo1.c (FT_COMPONENT): Define as
 
1736
        `trace_pshalgo1'.
 
1737
        * src/pshinter/pshalgo2.c (FT_COMPONENT): Define as
 
1738
        `trace_pshalgo2'.
 
1739
        * include/freetype/internal/ftdebug.h (FT_Trace): Updated.
 
1740
 
 
1741
        * docs/modules.txt: New file.
 
1742
 
 
1743
2001-12-21  David Turner  <david@freetype.org>
 
1744
 
 
1745
        * src/pshinter/pshrec.c (ps_hints_t2mask, ps_hints_t2counter):
 
1746
        Ignore invalid "hintmask" and "cntrmask" operators (instead of
 
1747
        returning an error).  Glyph 2028 of the CFF font "MSung-Light-Acro"
 
1748
        couldn't be rendered otherwise (it seems its charstring is buggy,
 
1749
        though this requires more analysis).
 
1750
        (FT_COMPONENT): Define.
 
1751
 
 
1752
        * src/cff/cffgload.c (CFF_Parse_CharStrings), src/psaux/t1decode.c
 
1753
        (T1_Decoder_Parse_Charstrings), src/pshinter/pshalgo2.c (*), Fixed a
 
1754
        bug where the X and Y axis where inversed in the postscript hinter.
 
1755
        This caused problem when displaying on non-square surfaces.
 
1756
 
 
1757
        * src/pshinter/pshalgo2.c: s/vertical/dimension/.
 
1758
 
 
1759
        * src/pshinter/pshglob.c (psh_globals_new): Replaced a floating
 
1760
        point constant with a fixed-float equivalent.  For some reasons not
 
1761
        all compilers are capable of directly computing a floating pointer
 
1762
        constant casted to FT_Fixed, and will link a math library instead.
 
1763
 
 
1764
2001-12-20  Werner Lemberg  <wl@gnu.org>
 
1765
 
 
1766
        * src/cache/ftccache.c (ftc_node_destroy, ftc_cache_lookup): Fix
 
1767
        tracing strings.
 
1768
        * src/cache/ftccmap.c (ftc_cmap_family_init): Ditto.
 
1769
        * src/cache/ftcmanag.c (ftc_family_table_alloc,
 
1770
        ftc_family_table_free, FTC_Manager_Check): Ditto.
 
1771
        * src/cache/ftcsbits.c (ftc_sbit_node_load): Ditto.
 
1772
 
 
1773
        * src/base/ftobjs.c (FT_Done_Library): Remove compiler warning.
 
1774
 
 
1775
2001-12-20  David Turner  <david@freetype.org>
 
1776
 
 
1777
        Added PostScript hinter support to the CFF and CID drivers.
 
1778
 
 
1779
        * include/freetype/internal/cfftypes.h (CFF_Font): New member
 
1780
        `pshinter'.
 
1781
        * src/cff/cffload.c (CFF_Get_Standard_Encoding): New function.
 
1782
        * src/cff/cffload.h: Updated.
 
1783
        * src/cff/cffgload.c (CFF_Init_Builder): Renamed to ...
 
1784
        (CFF_Builder_Init): This.
 
1785
        Added new argument `hinting'.
 
1786
        (CFF_Done_Builder): Renamed to ...
 
1787
        (CFF_Builder_Done): This.
 
1788
        (CFF_Init_Decoder): Added new argument `hinting'.
 
1789
        (CFF_Parse_CharStrings): Implement vstem support.
 
1790
        (CFF_Load_Glyph): Updated.
 
1791
        Add hinting support.
 
1792
        (cff_lookup_glyph_by_stdcharcode): Use CFF_Get_Standard_Encoding().
 
1793
        (cff_argument_counts): Updated.
 
1794
        * src/cff/cffgload.h: Updated.
 
1795
        * src/cff/cffobjs.c: Include FT_INTERNAL_POSTSCRIPT_HINTS_H.
 
1796
        (CFF_Size_Get_Globals_Funcs, CFF_Size_Done, CFF_Size_Init,
 
1797
        CFF_Size_Reset, CFF_GlyphSlot_Done, CFF_GLyphSlot_Init): New
 
1798
        functions.
 
1799
        (CFF_Init_Face): Renamed to ...
 
1800
        (CFF_Face_Init): This.
 
1801
        Add hinter support.
 
1802
        (CFF_Done_Face): Renamed to ...
 
1803
        (CFF_Face_Done): This.
 
1804
        (CFF_Init_Driver): Renamed to ...
 
1805
        (CFF_Driver_Init): This.
 
1806
        (CFF_Done_Driver): Renamed to ...
 
1807
        (CFF_Driver_Done): This.
 
1808
        * src/cff/cffobjs.h: Updated.
 
1809
        * src/cff/cffdrivr.c (cff_driver_class): Updated.
 
1810
 
 
1811
        * include/freetype/internal/t1types.h (CID_FaceRec): New member
 
1812
        `pshinter'.
 
1813
        * src/cid/cidgload.c (CID_Load_Glyph): Add hinter support.
 
1814
        * src/cid/cidobjs.c: Include FT_INTERNAL_POSTSCRIPT_HINTS_H.
 
1815
        (CID_GlyphSlot_Done, CID_GlyphSlot_Init, CID_Size_Get_Globals_Funcs,
 
1816
        CID_Size_Done, CID_Size_Init, CID_Size_Reset): New functions.
 
1817
        (CID_Done_Face): Renamed to ...
 
1818
        (CID_Face_Done): This.
 
1819
        (CID_Init_Face): Renamed to ...
 
1820
        (CID_Face_Init): This.
 
1821
        Add hinting support.
 
1822
        (CID_Init_Driver): Renamed to ...
 
1823
        (CID_Driver_Init): This.
 
1824
        (CID_Done_Driver): Renamed to ...
 
1825
        (CID_Driver_Done): This.
 
1826
        * src/cid/cidobjs.h: Updated.
 
1827
        * src/cidriver.c: Updated.
 
1828
 
 
1829
        * src/pshinter/pshrec.c (t2_hint_stems): Fixed.
 
1830
 
 
1831
        * src/base/ftobjs.c (FT_Done_Library): Fixed a stupid bug that
 
1832
        crashed the library on exit.
 
1833
 
 
1834
        * src/type1/t1gload.c (T1_Load_Glyph): Enable font matrix
 
1835
        transformation of hinted glyphs.
 
1836
 
 
1837
        * src/cid/cidload.c (cid_read_subrs): Fix error condition.
 
1838
 
 
1839
        * src/cid/cidobjs.c (CID_Face_Done): Fixed a memory leak; the subrs
 
1840
        routines were never released when CID faces were destroyed.
 
1841
 
 
1842
        * src/cff/cffload.h, src/cff/cffload.c, src/cff/cffgload.c: Updated
 
1843
        to move the definition of encoding tables back within "cffload.c"
 
1844
        instead of making them part of a shared header (causing problems in
 
1845
        "multi" builds).  This reverts change 2001-08-08.
 
1846
 
 
1847
        * docs/CHANGES: Updated for 2.0.6 release.
 
1848
        * docs/TODO: Added "stem3 and counter hints support" to the TODO
 
1849
        list for the Postscript hinter.
 
1850
        * docs/BUGS: Closed the AUTOHINT-NO-SBITS bug.
 
1851
 
 
1852
2001-12-19  David Turner  <david@freetype.org>
 
1853
 
 
1854
        * include/freetype/cache/ftcache.h: Added comments to indicate that
 
1855
        some of the exported functions should only be used by applications
 
1856
        that need to implement custom cache types.
 
1857
 
 
1858
        * src/truetype/ttgload.c (cur_to_org, org_to_cur): Fixed a nasty bug
 
1859
        that prevented composites from loading correctly, due to missing
 
1860
        parentheses around macro parameters.
 
1861
 
 
1862
        * src/sfnt/sfobjs.c (SFNT_Load_Face): Make the "post" and "name"
 
1863
        tables optional to load PCL fonts properly.
 
1864
 
 
1865
        * src/truetype/ttgload.c (TT_Load_Glyph), src/base/ftobjs.c
 
1866
        (FT_Load_Glyph), include/freetype/freetype.h (FT_LOAD_SBITS_ONLY):
 
1867
        "Fixed" the bug that prevented embedded bitmaps to be loaded when
 
1868
        the auto-hinter is used.  This actually is a hack but will be enough
 
1869
        until the internal re-design scheduled for FreeType 2.1.
 
1870
 
 
1871
        * src/raster/ftrend1.c (ft_raster1_render): Fixed a nasty outline
 
1872
        shifting bug in the monochrome renderer.
 
1873
 
 
1874
        * README: Updated version numbers to 2.0.6.
 
1875
 
 
1876
2001-12-17  Werner Lemberg  <wl@gnu.org>
 
1877
 
 
1878
        * src/truetype/ttgload.c (load_truetype_glyph): Fix test for invalid
 
1879
        glyph header.
 
1880
 
 
1881
2001-12-15  Werner Lemberg  <wl@gnu.org>
 
1882
 
 
1883
        * src/base/ftglyph.c (FT_Glyph_To_Bitmap): Remove compiler warning.
 
1884
        * include/freetype/ftcache.h (FTC_Node_Unref): Removed.  It is
 
1885
        already in ftcmanag.h.
 
1886
        * src/cache/ftcsbits.c (ftc_sbit_node_load): Remove unused variable
 
1887
        `gfam'.
 
1888
        * src/cache/ftcmanag.c (ftc_family_table_alloc,
 
1889
        * ftc_family_table_free): Use FT_EXPORT_DEF.
 
1890
        * include/freetype/cache/ftcmanag.h: Updated.
 
1891
        * src/cache/ftccache.c (ftc_node_destroy): Use FT_EXPORT_DEF.
 
1892
        * src/cache/ftccmap.c (ftc_cmap_node_init): Remove unused variable
 
1893
        `cfam'.
 
1894
        Remove compiler warning.
 
1895
        (FTC_CMapCache_Lookup): Remove compiler warnings.
 
1896
        (ftc_cmap_family_init): Ditto.
 
1897
        (FTC_CMapCache_Lookup): Ditto.
 
1898
 
 
1899
        * builds/unix/configure.ac: Increase `version_info' to 8:0:2.
 
1900
        * builds/unix/configure: Regenerated.
 
1901
 
 
1902
2001-12-14  Werner Lemberg  <wl@gnu.org>
 
1903
 
 
1904
        * builds/mac/README: Updated.
 
1905
 
 
1906
2001-12-14  Scott Long  <scott@swiftview.com>
 
1907
 
 
1908
        * src/truetype/ttgload.c (load_truetype_glyph): Fixing crash when
 
1909
        dealing with invalid fonts (i.e. glyph size < 10 bytes).
 
1910
 
 
1911
2001-12-14  Sam Latinga <slouken@devolution.com>
 
1912
 
 
1913
        * builds/mac/freetype.make: A new Makefile to build with MPW on
 
1914
        MacOS classic.
 
1915
 
 
1916
2001-12-14  David Turner  <david@freetype.org>
 
1917
 
 
1918
        * src/truetype/ttgload.c (TT_Load_Glyph), src/type1/t1gload.c
 
1919
        (T1_Load_Glyph), src/cid/cidgload.c (CID_Load_Glyph),
 
1920
        src/cff/cffgload.c (CFF_Load_Glyph): Fixed a serious bug common to
 
1921
        all font drivers (the advance width was never hinted when it
 
1922
        should).
 
1923
 
 
1924
        * include/freetype/freetype.h (FREETYPE_PATCH): New macro.
 
1925
        * src/base/ftdbgmem.c (debug_mem_dummy) [!FT_DEBUG_MEMORY]: Don't
 
1926
        use `extern' keyword.
 
1927
 
 
1928
2001-12-12  David Turner  <david@freetype.org>
 
1929
 
 
1930
        * src/pshint/pshglob.c (psh_blues_scale_zones, psh_blues_snap_stem
 
1931
        psh_globals_new): Adding correct BlueScale/BlueShift support, plus
 
1932
        family blues processing.
 
1933
        * src/pshint/pshglob.h (PSH_BluesRec): Updated.
 
1934
 
 
1935
        Started adding support for the Postscript hinter in the CFF module.
 
1936
 
 
1937
        * src/cff/cffgload.c: Include FT_INTERNAL_POSTSCRIPT_HINTS_H.
 
1938
        (CFF_Parse_CharStrings): Implement it.
 
1939
        * src/cff/cffgload.h: Updated.
 
1940
 
 
1941
2001-12-12  Werner Lemberg  <wl@gnu.org>
 
1942
 
 
1943
        * builds/unix/freetype2.m4: Some portability fixes.
 
1944
 
 
1945
2001-12-11  Jouk Jansen  <joukj@hrem.stm.tudelft.nl>
 
1946
 
 
1947
        * src/base/descrip.mms (OBJS): Add ftdebug.obj.
 
1948
 
 
1949
2001-12-11  Werner Lemberg  <wl@gnu.org>
 
1950
 
 
1951
        * src/sfnt/ttload.c (TT_Load_Generic_Header): Typos.
 
1952
 
 
1953
2001-12-11  David Turner  <david@freetype.org>
 
1954
 
 
1955
        * builds/unix/freetype-config.in: Modified the script to prevent
 
1956
        passing "-L/usr/lib" to gcc.
 
1957
 
 
1958
        * docs/FTL.TXT: Simple fix (change "LICENSE.TXT" to "FTL.TXT").
 
1959
 
 
1960
        * builds/unix/freetype2.m4: New file for checking configure paths.
 
1961
        We need to install it in $(prefix)/share/aclocal/freetype2.m4 but I
 
1962
        didn't modify builds/unix/install.mk yet.
 
1963
 
 
1964
        * INSTALL: Updated the instructions to build shared libraries with
 
1965
        Jam.  They were simply wrong.
 
1966
 
 
1967
        * src/base/fttrigon.c (FT_Cos): Fixed a small bug that caused
 
1968
        slightly improper results for `FT_Cos' and `FT_Sin' (example:
 
1969
        FT_Sin(0) == -1!).
 
1970
 
 
1971
2001-12-11  Detlef W�rkner  <TetiSoft@apg.lahn.de>
 
1972
 
 
1973
        * include/freetype/internal/ftstream.h (GET_LongLE, GET_ULongLE):
 
1974
        Fixed incorrect argument types.
 
1975
 
 
1976
2001-12-10  Francesco Zappa Nardelli  <Francesco.Zappa.Nardelli@ens.fr>
 
1977
 
 
1978
        * src/pcf/pcfdriver.c (PCF_Init_Face): Allow Xft to use PCF fonts
 
1979
        by setting the "face->metrics.max_advance" correctly.
 
1980
 
 
1981
2001-12-07  David Turner  <david@freetype.org>
 
1982
 
 
1983
        * include/freetype/cache/ftccmap.h, src/cache/ftccmap.c: Added new
 
1984
        charmap cache.
 
1985
        * src/cache/ftcache.c: Updated.
 
1986
 
 
1987
        * src/autohint/ahhint.c (ah_hinter_hint_edges): s/UNUSED/FT_UNUSED/.
 
1988
 
 
1989
2001-12-06  Leonard Rosenthol  <leonardr@lazerware.com>
 
1990
 
 
1991
        Added support for reading .dfont files on Mac OS X.  Also added a
 
1992
        new routine which looks up a given font by name in the Mac OS and
 
1993
        returns the disk file where it resides.
 
1994
 
 
1995
        * src/base/ftmac.c: Include <Files.h> and <TextUtils.h>.
 
1996
        (is_dfont): New auxiliary function.
 
1997
        (FT_New_Face_From_dfont): New function.
 
1998
        (FT_GetFile_From_Mac_Name): New exported function.
 
1999
        (FT_New_Face): Updated.
 
2000
        * include/freetype/ftmac.h: Updated.
 
2001
 
 
2002
2001-12-06  David Turner  <david@freetype.org>
 
2003
 
 
2004
        * src/cache/Jamfile, src/cache/rules.mk: Updated.
 
2005
 
 
2006
2001-12-06  Werner Lemberg  <wl@gnu.org>
 
2007
 
 
2008
        * INSTALL: Small update.
 
2009
 
 
2010
2001-12-05  David Turner  <david@freetype.org>
 
2011
 
 
2012
        * src/base/ftglyph.c (FT_Glyph_To_Bitmap): Re-ordered code for
 
2013
        debugging purposes.
 
2014
        Comment out use of `origin'.
 
2015
 
 
2016
        * src/smooth/ftsmooth.c (ft_smooth_render): Fixed a nasty hidden bug
 
2017
        where outline shifting wasn't correctly undone after bitmap
 
2018
        rasterization.  This created problems with certain glyphs (like '"'
 
2019
        of certain fonts) and the cache system.
 
2020
 
 
2021
        * src/pshinter/pshalgo1.c (psh1_hint_table_init): Fix typo.
 
2022
        * src/pshinter/pshalgo2.c (psh2_hint_table_init): Fix typo.
 
2023
        (ps2_hints_apply): Small fix.
 
2024
 
 
2025
2001-12-05  David Turner  <david@freetype.org>
 
2026
 
 
2027
        * src/pshinter/pshalgo2.c (psh2_hint_table_init),
 
2028
        src/pshinter/pshalgo1.c (psh1_hint_table_init): Removed compiler
 
2029
        warnings.
 
2030
 
 
2031
        * include/freetype/ftcache.h, include/freetype/cache/*, src/cache/*:
 
2032
        Yet another massive rewrite of the caching sub-system in order to
 
2033
        both increase performance and allow simpler cache sub-classing.  As
 
2034
        an example, the code for the image and sbit caches is now much
 
2035
        simpler.
 
2036
 
 
2037
        I still need to update the documentation in
 
2038
        www/freetype2/docs/cache.html to reflect the new design though.
 
2039
 
 
2040
        * include/freetype/config/ftheader.h (FT_CACHE_CHARMAP_H): New
 
2041
        macro.
 
2042
        (FT_CACHE_INTERNAL_CACHE_H): Updated.
 
2043
 
 
2044
2001-12-05  David Krause  <freetype@davidkrause.com>
 
2045
 
 
2046
        * docs/license.txt: s/X Windows/X Window System/.
 
2047
 
 
2048
2001-12-04  Werner Lemberg  <wl@gnu.org>
 
2049
 
 
2050
        * src/raster/ftraster.c: Fix definition condition of MEM_Set().
 
2051
        * src/smooth/ftgrays.c (M_Y): Change value to 192.
 
2052
        * src/base/ftdbgmem.c (ft_mem_table_destroy): Fix printf() parameter.
 
2053
        Remove unused variable.
 
2054
        * src/cache/ftcimage.c (ftc_image_node_init,
 
2055
        ftc_image_node_compare): Remove unused variables.
 
2056
        * src/cache/ftcsbits.c (ftc_sbit_node_weight): Remove unused
 
2057
        variable.
 
2058
        * src/raster/ftraster.c (MEM_Set): Move definition down to avoid
 
2059
        compiler warning.
 
2060
        * src/autohint/ahhint.c (ah_hinter_hint_edges): Use UNUSED() to
 
2061
        avoid compiler warnings.
 
2062
        * src/pcf/pcfread.c (tableNames): Use `const'.
 
2063
        (pcf_read_TOC): Change counter name to avoid compiler warning.
 
2064
        Use `const'.
 
2065
        * src/pshinter/pshrec.c (ps_hints_close): Remove redundant
 
2066
        declaration.
 
2067
        * src/pshinter/pshalgo1.c (psh1_hint_table_init): Rename variables
 
2068
        to avoid shadowing.
 
2069
        * src/pshinter/pshalgo2.c (psh2_hint_table_activate_mask): Ditto.
 
2070
        * src/type1/t1objs.h: Remove double declarations of `T1_Size_Init()'
 
2071
        and `T1_Size_Done()'.
 
2072
 
 
2073
2001-11-20  Antoine Leca  <antoineleca@multimania.com>
 
2074
 
 
2075
        * include/freetype/ttnameid.h: Added some new Microsoft language
 
2076
        codes and LCIDs as found in MSDN (Passport SDK).  Also added
 
2077
        comments about the meaning of bit 57 of the `OS/2' table
 
2078
        (TT_UCR_SURROGATES) which (with OpenType v.1.3) now means "there is
 
2079
        a character beyond 0xFFFF in this font".  Thanks to Detlef W�rkner
 
2080
        <TetiSoft@apg.lahn.de> for noticing this.
 
2081
 
 
2082
2001-11-20  David Turner  <david@freetype.org>
 
2083
 
 
2084
        * src/pshinter/{pshalgo2.c, pshalgo1.c}: Fixed stupid bug in sorting
 
2085
        routine that created nasty alignment artefacts.
 
2086
 
 
2087
        * src/pshinter/pshrec.c, tests/gview.c: Debugging updates.
 
2088
 
 
2089
        * src/smooth/ftgrays.c: De-activated experimental gamma support.
 
2090
        Apparently, `optimal' gamma tables depend on the monitor type,
 
2091
        resolution and general karma, so it's better to compute them outside
 
2092
        of the rasterizer itself.
 
2093
        (gray_convert_glyph): Use `volatile' keyword.
 
2094
 
 
2095
2001-10-29  David Turner  <david@freetype.org>
 
2096
 
 
2097
        Adding experimental `gamma' support.  This produces smoother glyphs
 
2098
        at small sizes for very little cost.
 
2099
 
 
2100
        * src/smooth/ftgrays.c (grays_init_gamma): New function.
 
2101
        (gray_raster_new): Use it.
 
2102
 
 
2103
        Various fixes to the auto-hinter.  They merely improve the output of
 
2104
        sans-serif fonts.  Note that there are still problems with serifed
 
2105
        fonts and composites (accented characters).
 
2106
 
 
2107
        * src/autohint/ahglyph.c (ah_outline_load,
 
2108
        ah_outline_link_segments): Implement it.
 
2109
        Fix typos.
 
2110
        (ah_outline_save, ah_outline_compute_segments): Fix typos.
 
2111
        * src/autohint/ahhint.c (ah_align_serif_edge): New argument
 
2112
        `vertical'.  Implement improvement.
 
2113
        (ah_hint_edges_3, ah_hinter_hint_edges): Implement it.
 
2114
        Fix typos.
 
2115
        (ah_hinter_align_strong_points, ah_hinter_align_weak_points): Fix
 
2116
        typos.
 
2117
        (ah_hinter_load): Set `ah_debug_hinter' if DEBUG_HINTER is defined.
 
2118
        * src/autohint/ahmodule.c: Implement support for DEBUG_HINTER macro.
 
2119
        * src/autohint/ahtypes.h: Ditto.
 
2120
        (AH_Hinter): Remove `disable_horz_edges' and `disable_vert_edges'
 
2121
        (making them global as `ah_debug_disable_horz' and
 
2122
        `ah_debug_disable_vert').
 
2123
        Fix typos.
 
2124
 
 
2125
        * tests/gview.c: Updated the debugging glyph viewer to show the
 
2126
        hints generated by the "autohint" module.
 
2127
 
 
2128
2001-10-27  David Turner  <david@freetype.org>
 
2129
 
 
2130
        * src/cache/ftcchunk.c (ftc_chunk_cache_lookup): Fixed a bug that
 
2131
        considerably lowered the performance of the abstract chunk cache.
 
2132
 
 
2133
2001-10-26  David Turner  <david@freetype.org>
 
2134
 
 
2135
        * include/freetype/ftcache.h, include/freetype/cache/*.h,
 
2136
        src/cache/*.c: Major re-design of the cache sub-system to provide
 
2137
        better performance as well as an "Acquire"/"Release" API.  Seems to
 
2138
        work well here, but probably needs a bit more testing.
 
2139
 
 
2140
2001-10-26  Leonard Rosenthol  <leonardr@lazerware.com>
 
2141
 
 
2142
        * builds/mac/README: Updated to reflect my taking over the project
 
2143
        and that is now being actively maintained.
 
2144
 
 
2145
        * src/base/ftmac.c (parse_fond): Applied patches from Paul Miller
 
2146
        <paulm@profoundeffects.com> to support loading a face other than the
 
2147
        first from a FOND resource.
 
2148
        (FT_New_Face_From_FOND): Updated.
 
2149
 
 
2150
2001-10-25  Leonard Rosenthol  <leonardr@lazerware.com>
 
2151
 
 
2152
        * builds/mac/ftlib.prj: Update of CodeWarrior project file for Mac
 
2153
        OS for latest version (7) of CWPro and for recent changes to the FT
 
2154
        source tree.
 
2155
 
 
2156
2001-10-25  David Turner  <david@freetype.org>
 
2157
 
 
2158
        * include/freetype/config/ftoption.h: Updated comments to explain
 
2159
        precisely how to use project-specific macro definitions without
 
2160
        modifying this file manually.
 
2161
 
 
2162
        (FT_CONFIG_FORCE_INT64): Define.
 
2163
 
 
2164
        (FT_DEBUG_MEMORY): New macro.
 
2165
 
 
2166
2001-10-24  Tom Kacvinsky  <tkacvins@freetype.org>
 
2167
 
 
2168
        * builds/unix/ftsystem.c (FT_New_Memory): Added a missing `{'.
 
2169
 
 
2170
2001-10-23  David Turner  <david@freetype.org>
 
2171
 
 
2172
        * include/freetype/internal/ftmemory.h, src/base/ftdbgmem.c:
 
2173
        Improvements to the memory debugger to report more information in
 
2174
        case of errors.  Also, some allocations that occured through REALLOC
 
2175
        couldn't be previously catched correctly.
 
2176
 
 
2177
        * src/autohint/ahglyph.c (ah_outline_compute_segments,
 
2178
        ah_outline_compute_edges), src/raster/ftraster.c (ft_black_new),
 
2179
        src/smooth/ftgrays.c (gray_render_span, gray_raster_new): Replaced
 
2180
        liberal uses of memset() by the MEM_Set() macro.
 
2181
 
 
2182
2001-10-23  David Turner  <david@freetype.org>
 
2183
 
 
2184
        * src/raster/ftraster.c (Update): Removed to be inlined in ...
 
2185
        (Sort): Updated.
 
2186
 
 
2187
2001-10-22  David Turner  <david@freetype.org>
 
2188
 
 
2189
        * builds/unix/ftsystem.c (FT_New_Memory, FT_Done_Memory),
 
2190
        builds/vms/ftsystem.c (FT_New_Memory, FT_Done_Memory),
 
2191
        builds/amiga/ftsystem.c (FT_New_Memory, FT_Done_Memory),
 
2192
        src/base/ftdbgmem.c: Updated the memory debugger and
 
2193
        platform-specific implementations of `ftsystem' in order to be able
 
2194
        to debug memory allocations on Unix, VMS and Amiga too!
 
2195
 
 
2196
        * src/pshinter/pshalgo2.c (psh2_hint_table_record_mask): Removed
 
2197
        some bogus warnings.
 
2198
 
 
2199
        * include/freetype/internal/ftmemory.h, src/base/ftdbgmem.c:
 
2200
        Modified the debugging memory manager to report the location (source
 
2201
        file name + line number) where leaked memory blocks are allocated in
 
2202
        the source file.
 
2203
 
 
2204
        * src/base/ftdbgmem.c: New debugging memory manager.  You must
 
2205
        define the FT_DEBUG_MEMORY macro in "ftoption.h" to enable it.  It
 
2206
        will record every memory block allocated and report simple errors
 
2207
        like memory leaks and double deletes.
 
2208
 
 
2209
        * src/base/Jamfile: Include ftdbgmem.
 
2210
        * src/base/rules.mk: Ditto.
 
2211
        * src/base/ftbase.c: Include ftdbgmem.c.
 
2212
 
 
2213
        * include/freetype/config/ftoption.h: Added the FT_DEBUG_MEMORY
 
2214
        macro definition.
 
2215
 
 
2216
        * src/base/ftsystem.c (FT_New_Memory, FT_Done_Memory): Modified the
 
2217
        base component to use the debugging memory manager when the macro
 
2218
        FT_DEBUG_MEMORY is defined.
 
2219
 
 
2220
2001-10-21  Tom Kacvinsky  <tkacvins@freetype.org>
 
2221
 
 
2222
        * src/cff/cffload.c (CFF_Done_Font): Free subfonts array only if
 
2223
        we are working with a CID keyed CFF font.  Otherwise, a variable
 
2224
        that was never allocated memory might freed.  This is a correction
 
2225
        to the previous patch for freeing subfonts.
 
2226
 
 
2227
2001-10-21  Tom Kacvinsky  <tkacvins@freetype.org>
 
2228
 
 
2229
        * src/cff/cffload.c (CFF_Done_Font): Free the subfonts array to
 
2230
        avoid a memory leak.
 
2231
 
 
2232
2001-10-21  David Turner  <david@freetype.org>
 
2233
 
 
2234
        * src/pshinter/pshalgo2.c, src/pshinter/pshalgo1.c,
 
2235
        src/pshinter/pshglob.c: Removing compiler warnings in pedantic modes
 
2236
        (in multi-object compilation mode, mainly).
 
2237
 
 
2238
2001-10-20  Tom Kacvinsky  <tkacvins@freetype.org>
 
2239
 
 
2240
        * src/type1/t1load.c (parse_encoding): Add a test to make sure
 
2241
        that custom encodings (i.e., neither StandardEncoding nor
 
2242
        ExpertEncoding) are not loaded twice when the Type 1 font is
 
2243
        synthetic.
 
2244
 
 
2245
        * src/type1/t1load.c (parse_font_name, parse_subrs): Added a test
 
2246
        for when loading synthetic fonts to make sure that the font name
 
2247
        and subrotuines are not loaded twice.  This is to remove a memory
 
2248
        leak that occured because the original memory blocks for these
 
2249
        objects were not deallocated when the objects were parsed the
 
2250
        second time.
 
2251
 
 
2252
2001-10-19  David Turner  <david@freetype.org>
 
2253
 
 
2254
        * src/smooth/ftgrays.c, src/pshinter/pshglob.h,
 
2255
        src/pshinter/pshrec.c, src/pshinter/pshalgo2.c: Getting rid of
 
2256
        compiler warnings.
 
2257
 
 
2258
        * src/pshinter/module.mk, src/pshinter/rules.mk: Adding control
 
2259
        files to build the PostScript hinter with the "old" build system.
 
2260
 
 
2261
2001-10-19  Jacob Jansen  <joukj@hrem.stm.tudelft.nl>
 
2262
 
 
2263
        * descrip.mms, src/pshinter/descrip.mms: Updates to the VMS build
 
2264
        files.
 
2265
 
 
2266
2001-10-18  David Turner  <david@freetype.org>
 
2267
 
 
2268
        * src/psnames/pstables.h, src/tools/glnames.py: Rewrote the
 
2269
        "glnames.py" script used to generate the "pstables.h" header file.
 
2270
        The old one contained a serious bug that made FreeType return
 
2271
        incorrect glyph names for certain glyphs.
 
2272
 
 
2273
        * src/truetype/ttdriver.c (Set_Char_Sizes): Changing computation of
 
2274
        pixel size from character size to use rounding.  This is an
 
2275
        experiment to see whether this gives values similar to Windows for
 
2276
        scaled ascent/descent/etc.
 
2277
 
 
2278
        * src/base/ftcalc.c (FT_Div64by32): Changed the implementation
 
2279
        slightly since the original code was mis-compiled on Mac machines
 
2280
        using the MPW C compiler.
 
2281
 
 
2282
        * src/base/ftobjs.c (FT_Realloc): When a memory block was grown
 
2283
        through FT_Realloc(), the new bytes were not set to 0, which created
 
2284
        some strange bugs in the PostScript hinter.
 
2285
        (destroy_face): Don't deallocate unconditionally.
 
2286
 
 
2287
        * src/cid/cidgload.c (CID_Compute_Max_Advance, CID_Load_Glyph):
 
2288
        Adding support to new PostScript hinter.
 
2289
 
 
2290
        * include/freetype/internal/psglobal.h,
 
2291
        include/freetype/internal/pshints.h,
 
2292
        include/freetype/config/ftmodule.h, src/pshinter/Jamfile,
 
2293
        src/pshinter/pshalgo.h, src/pshinter/pshalgo1.h,
 
2294
        src/pshinter/pshalgo1.c, src/pshinter/pshalgo2.h,
 
2295
        src/pshinter/pshalgo2.c, src/pshinter/pshglob.h,
 
2296
        src/pshinter/pshglob.c, src/pshinter/pshinter.c,
 
2297
        src/pshinter/pshmod.c, src/pshinter/pshmod.h, src/pshinter/pshrec.c,
 
2298
        src/pshinter/pshrec.h: Adding new PostScript hinter module.
 
2299
 
 
2300
        * include/freetype/internal/ftobjs.h,
 
2301
        include/freetype/internal/internal.h,
 
2302
        include/freetype/internal/psaux.h,
 
2303
        include/freetype/internal/t1types.h, src/psaux/psobjs.c,
 
2304
        src/psaux/psobjs.h, src/psaux/t1decode.h, src/psaux/t1decode.c,
 
2305
        src/type1/t1driver.c, src/type1/t1gload.c, src/type1/t1objs.c,
 
2306
        src/type1/t1objs.h: Updates to use the new PostScript hinter.
 
2307
 
 
2308
        * tests/Jamfile, tests/gview.c: Adding a new glyph hinting
 
2309
        viewer/debugger to the source tree.  Note that you will _not_ be
 
2310
        able to compile it since it depends on an unavailable graphics
 
2311
        library named "Nirvana" to render vector images.
 
2312
 
 
2313
2001-10-17  David Turner  <david@freetype.org>
 
2314
 
 
2315
 
 
2316
        * Version 2.0.5 released.
 
2317
        =========================
 
2318
 
 
2319
 
 
2320
        * include/freetype/freetype.h, include/internal/ftobjs.h,
 
2321
        src/base/ftobjs.c, src/type1/t1driver.c: Adding a new function named
 
2322
        'FT_Get_Postscript_Name' to retrieve the PostScript name of a given
 
2323
        font.  Should work with all formats except pure CFF/CEF fonts (this
 
2324
        will be added soon).
 
2325
 
 
2326
        * src/cid/cidriver (cid_get_postscript_name): New function.
 
2327
        (CID_Get_Interface): Handle `postscript_name' interface.
 
2328
 
 
2329
        * src/sfnt/sfdriver.c (get_sfnt_postscript_name): New function.
 
2330
        (SFNT_Get_Interface): Handle `postscript_name' interface.
 
2331
 
 
2332
        * src/type1/t1driver.c (t1_get_ps_name): New function.
 
2333
        (Get_Interface): Handle `postscript_name' interface.
 
2334
 
 
2335
        * README, docs/CHANGES: Updated for 2.0.5 release.
 
2336
 
 
2337
2001-10-08  David Turner  <david@freetype.org>
 
2338
 
 
2339
        Fixed a bug in `glnames.py' that prevented it from generating
 
2340
        correct glyph names tables.  This resulted in the unavailability of
 
2341
        certain glyphs like `Cacute', `cacute' and `lslash' in Unicode
 
2342
        charmaps, even if these were present in the font (causing problems
 
2343
        for Polish users).
 
2344
 
 
2345
        * src/tools/glnames.py (mac_standard_names): Fixed.
 
2346
        (t1_standard_strings): Some fixes and renamed to ...
 
2347
        (sid_standard_names): This.
 
2348
        (t1_expert_encoding): Fixed.
 
2349
        (the_adobe_glyph_list): Renamed to ...
 
2350
        (adobe_glyph_names): This.
 
2351
        (the_adobe_glyphs): Renamed to ...
 
2352
        (adobe_glyph_values): This.
 
2353
        (dump_mac_indices, dump_glyph_list, dump_unicode_values, main):
 
2354
        Updated.
 
2355
        * src/psnames/pstables.h: Regenerated.
 
2356
        * src/psnames/psmodule.c (PS_Unicode_Value): Fix offset.
 
2357
        Fix return value.
 
2358
        Use `sid_standard_table' and `ps_names_to_unicode' instead of
 
2359
        `t1_standard_glyphs' and `names_to_unicode'.
 
2360
        (PS_Macintosh_Name): Use `ps_glyph_names' instead of
 
2361
        `standard_glyph_names'.
 
2362
        (PS_Standard_Strings): Use `sid_standard_names' instead of
 
2363
        `t1_standard_glyphs'.
 
2364
 
 
2365
        * doc/BUGS, doc/TODO: New documents.
 
2366
 
 
2367
2001-10-07  Richard Barber  <rich@solutionuk.com>
 
2368
 
 
2369
        * src/cache/ftlru.c (FT_Lru_Lookup_Node): Fixed a bug that prevented
 
2370
        correct LRU behaviour.
 
2371
 
 
2372
2001-10-07  David Turner  <david@freetype.org>
 
2373
 
 
2374
        setjmp() and longjmp() are now used for rollback (i.e. when memory
 
2375
        pool overflow occurs).
 
2376
 
 
2377
        Function names are now all uniformly prefixed with `gray_'.
 
2378
 
 
2379
        * src/smooth/ftgrays.c: Include <setjmp.h>.
 
2380
        (ErrRaster_MemoryOverflow): New macro.
 
2381
        (TArea): New type to store area values in each cell (using `int' was
 
2382
        too small on 16-bit systems).  <limits.h> is included to properly
 
2383
        get the needed data type.
 
2384
        (TCell, TRaster): Use it.
 
2385
        (TRaster): New element `jump_buffer'.
 
2386
        (gray_compute_cbox): Use `RAS_ARG' as the only parameter and get
 
2387
        `outline' from it.
 
2388
        (gray_record_cell): Use longjmp().
 
2389
        (gray_set_cell): Use gray_record_cell() for error handling.
 
2390
        (gray_render_line, gray_render_conic, gray_render_cubic): Simplify.
 
2391
        (gray_convert_glyph_inner): New function, using setjmp().
 
2392
        (gray_convert_glyph): Use it.
 
2393
 
 
2394
2001-10-07  David Turner  <david@freetype.org>
 
2395
 
 
2396
        Provide a public API to manage multiple size objects for a given
 
2397
        FT_Face in the new header file `ftsizes.h'.
 
2398
 
 
2399
        * include/freetype/ftsizes.h: New header file,
 
2400
        * include/freetype/internal/ftobjs.h: Use it.
 
2401
        Remove declarations of FT_New_Size and FT_Done_Size (moved to
 
2402
        ftsizes.h).
 
2403
        * include/freetype/config/ftheader.h (FT_SIZES_H): New macro.
 
2404
        * src/base/ftobjs.c (FT_Activate_Size): New function.
 
2405
        * src/cache/ftcmanag.c: Include ftsizes.h.
 
2406
        (ftc_manager_init_size, ftc_manager_flush_size): Use
 
2407
        FT_Activate_Size.
 
2408
 
 
2409
2001-09-20  Detlef W�rkner  <TetiSoft@apg.lahn.de>
 
2410
 
 
2411
        * builds/amiga/*: Added port to Amiga with the SAS/C compiler.
 
2412
 
 
2413
2001-09-15  Detlef W�rkner  <TetiSoft@apg.lahn.de>
 
2414
 
 
2415
        * src/type1/t1afm.c (T1_Done_AFM): Free `afm'.
 
2416
 
 
2417
2001-09-10  Yao Zhang  <yzhang@sharemedia.com>
 
2418
 
 
2419
        * src/sfnt/ttcmap.c (code_to_index2): Handle code values with
 
2420
        hi-byte == 0 correctly.
 
2421
 
 
2422
2001-09-10  Werner Lemberg  <wl@gnu.org>
 
2423
 
 
2424
        * builds/link-std.mk ($(PROJECT_LIBRARY)): Fix typo.
 
2425
 
 
2426
2001-08-30  Martin Muskens  <mmuskens@aurelon.com>
 
2427
 
 
2428
        * src/type1/t1load.c (parse_font_matrix): A new way to compute the
 
2429
        units per EM with greater accuracy (important for embedded T1 fonts
 
2430
        in PDF documents that were automatically generated from TrueType
 
2431
        ones).
 
2432
 
 
2433
        * src/type1/t1load.c (is_alpha): Now supports "+" in font names;
 
2434
        this is used in embedded fonts.
 
2435
 
 
2436
        * src/psaux/psobjs.c (PS_Table_Add): Fixed a reallocation bug that
 
2437
        generated a dangling pointer reference.
 
2438
 
 
2439
2001-08-30  Anthony Feik  <afeick@hotmail.com>
 
2440
 
 
2441
        * src/type1/t1afm.c (T1_Read_Afm): Now correctly sets the flag
 
2442
        FT_FACE_FLAG_KERNING when appropriate for Type1 + AFM files.
 
2443
 
 
2444
2001-08-25  Werner Lemberg  <wl@gnu.org>
 
2445
 
 
2446
        * src/sfnt/ttload.c (TT_Load_CMap): Fix frame length of
 
2447
        `cmap_rec_fields'.
 
2448
 
 
2449
        * include/freetype/fterrors.h [!FT_CONFIG_OPTION_USE_MODULE_ERRORS]:
 
2450
        Undefine FT_ERR_BASE before defining again.
 
2451
 
 
2452
2001-08-22  Werner Lemberg  <wl@gnu.org>
 
2453
 
 
2454
        * src/truetype/ttinterp.h: Fix prototype of TT_Move_Func.
 
2455
 
 
2456
2001-08-21  Werner Lemberg  <wl@gnu.org>
 
2457
 
 
2458
        * builds/dos/dos-def.mk (NO_OUTPUT): Don't use `&>' but `>'.
 
2459
 
 
2460
2001-08-21  David Turner  <david@freetype.org>
 
2461
 
 
2462
        * include/freetype/config/ftoption.h: Changed the default setting
 
2463
        for FT_CONFIG_OPTION_USE_MODULE_ERRORS to undefined, since it breaks
 
2464
        source compatibility in a few cases.  Updated the comment to explain
 
2465
        that too.
 
2466
 
 
2467
2001-08-17  Martin Muskens  <mmuskens@aurelon.com>
 
2468
 
 
2469
        * src/base/ftcalc.c (FT_MulDiv): Fixed serious typo.
 
2470
 
 
2471
2001-08-12  Werner Lemberg  <wl@gnu.org>
 
2472
 
 
2473
        Updating to OpenType 1.3.
 
2474
 
 
2475
        * include/freetype/internal/tttypes.h (TT_CMap0, TT_CMap2, TT_CMap4,
 
2476
        TT_CMap6): Adding field `language'.
 
2477
        (TT_CMapTable): Removing field `language'.
 
2478
        Type of `length' field changed to FT_ULong.
 
2479
        Adding fields for cmaps format 8, 10, and 12.
 
2480
        (TT_CMapGroup): New auxiliary structure.
 
2481
        (TT_CMap8_12, TT_CMap10): New structures.
 
2482
        * include/freetype/tttables.h (TT_HoriHeader, TT_VertHeader):
 
2483
        Removed last element of `Reserved' array.
 
2484
        * include/freetype/ttnameid.h (TT_PLATFORM_CUSTOM, TT_MS_ID_UCS_4,
 
2485
        TT_NAME_ID_CID_FINDFONT_NAME): New macros.
 
2486
 
 
2487
        * src/sfnt/ttcmap.c (TT_CharMap_Load): Updated loading of `language'
 
2488
        field to the new structures.
 
2489
        Fixed freeing of arrays in case of unsuccessful loads.
 
2490
        Added support for loading format 8, 10, and 12 cmaps.
 
2491
        (TT_CharMap_Free): Added support for freeing format 8, 10, and 12
 
2492
        cmaps.
 
2493
        (code_to_index4): Small improvement.
 
2494
        (code_to_index6): Ditto.
 
2495
        (code_to_index8_12, code_to_index10): New functions.
 
2496
        * src/sfnt/ttload.c (TT_Load_Metrics_Header): Updated to new
 
2497
        structure.
 
2498
        (TT_Load_CMap): Ditto.
 
2499
 
 
2500
        * src/sfnt/sfobjs.c (tt_encodings): Add MS UCS4 table (before MS
 
2501
        Unicode).
 
2502
 
 
2503
2001-08-11  Werner Lemberg  <wl@gnu.org>
 
2504
 
 
2505
        * src/type1/t1driver.c (t1_get_name_index): Fix compiler warning.
 
2506
 
 
2507
2001-08-09  Tom Kacvinsky  <tkacvins@freetype.org>
 
2508
 
 
2509
        * src/cff/cffdrivr.c (get_cff_glyph_name): Renamed to
 
2510
        cff_get_glyph_name for consistency.
 
2511
 
 
2512
        (cff_get_glyph_index): Minor documentation change.
 
2513
 
 
2514
        * src/type1/t1driver.c (t1_get_name_index): New function used in
 
2515
        Get_Interface as the function returned when the "name_index"
 
2516
        function is requested.
 
2517
 
 
2518
        (get_t1_glyph_name): Renamed to t1_get_glyph_name for consistency.
 
2519
 
 
2520
2001-08-08  Tom Kacvinsky  <tkacvins@freetype.org>
 
2521
 
 
2522
        * src/cff/cffload.c: Removed definitions of cff_isoadobe_charset,
 
2523
        cff_expert_charset, cff_expertsubset_charset, cff_standard_encoding,
 
2524
        and cff_expert_encoding arrays to cffload.h.
 
2525
 
 
2526
        * src/cff/cffload.h: Added definitions of cff_isoadobe_charset,
 
2527
        cff_expert_charset, cff_expertsubset_charset, cff_standard_encoding,
 
2528
        and cff_expert_encoding arrays.
 
2529
 
 
2530
        * src/cff/cffdrivr.c (cff_get_name_index): New function, returned
 
2531
        when `cff_get_interface' is called with a request for the
 
2532
        "name_index" function.
 
2533
 
 
2534
        (cff_get_interface): Modified so that it returns the function
 
2535
        `cff_get_name_index' when the "name_index" function is requested.
 
2536
 
 
2537
        * src/base/ftobjs.c (FT_Get_Name_Index): New function, used to
 
2538
        return a glyph index for a given glyph name only if the driver
 
2539
        supports glyph names.
 
2540
 
 
2541
        * include/freetype/internal/ftobjs.h (FT_Name_Index_Requester):
 
2542
        New function pointer type defintion used in the function
 
2543
        FT_Get_Name_Index.
 
2544
 
 
2545
        * include/freetype/freetype.h (FT_Get_Name_Index): Added
 
2546
        documentation and prototype.
 
2547
 
 
2548
2001-07-26  Werner Lemberg  <wl@gnu.org>
 
2549
 
 
2550
        * builds/cygwin/*: Removed.  Use the unix stuff instead.
 
2551
 
 
2552
2001-07-26  Jouk Jansen  <joukj@hrem.stm.tudelft.nl>
 
2553
 
 
2554
        * builds/vms/ftconfig.h (FT_CALLBACK_DEF): Updated to change dated
 
2555
        2001-06-27.
 
2556
 
 
2557
2001-07-17  Werner Lemberg  <wl@gnu.org>
 
2558
 
 
2559
        * include/freetype/internal/psaux.h (PS_Table): Use FT_Offset for
 
2560
        `cursor' and `capacity'.
 
2561
        * src/psaux/psobjc.c (reallocate_t1_table): Use FT_Long for second
 
2562
        parameter.
 
2563
        (PS_Table_Add): Use FT_Offset for `new_size'.
 
2564
 
 
2565
        Add support for version 0.5 maxp tables.
 
2566
 
 
2567
        * src/sfnt/ttload.c (TT_Load_MaxProfile): Implement it.
 
2568
        (TT_Load_OS2): Initialize some values.
 
2569
 
 
2570
2001-07-13  Werner Lemberg  <wl@gnu.org>
 
2571
 
 
2572
        * src/base/ftsynth.c: Include ftcalc.h unconditionally.
 
2573
 
 
2574
2001-07-07  David Turner  <david@freetype.org>
 
2575
 
 
2576
        * src/truetype/ttgload.c, src/truetype/ttinterp.c, src/pcf/pcfread:
 
2577
        Removed pedantic compiler warnings when the bytecode interpreter is
 
2578
        compiled in.
 
2579
 
 
2580
2001-07-03  Werner Lemberg  <wl@gnu.org>
 
2581
 
 
2582
        * src/autohint/ahhint.c (ah_hinter_align_weak_points): Remove
 
2583
        unused variable `edges'.
 
2584
        (ah_hinter_load): Remove unused variables `old_width' and
 
2585
        `new_width'.
 
2586
        * src/cid/cidload.c (cid_decrypt): Use `U' for constant (again).
 
2587
        * src/psaux/psobjs.c (T1_Decrypt): Ditto.
 
2588
        * src/type1/t1parse.c (T1_Get_Private_Dict): Ditto.
 
2589
 
 
2590
2001-06-28  David Turner <david@freetype.org>
 
2591
 
 
2592
        * include/internal/ftstream.h: Modified the definitions
 
2593
        of the FT_GET_XXXX and NEXT_XXXX macros for 16-bit correctness.
 
2594
 
 
2595
2001-06-26  Werner Lemberg  <wl@gnu.org>
 
2596
 
 
2597
        * src/cid/cidload.c, src/cid/cidload.h (cid_decrypt): Use FT_Offset
 
2598
        instead of FT_Int as type for `length' parameter.
 
2599
        * include/freetype/internal/psaux.h (PSAux_Interface): Updated.
 
2600
 
 
2601
2001-06-27  Wolfgang Domr�se  <porthos.domroese@harz.de>
 
2602
 
 
2603
        * src/psaux/psobjs.c, src/psaux/psobjs.h (T1_Decrypt): Use FT_Offset
 
2604
        instead of FT_Int as type for `length' parameter.
 
2605
 
 
2606
 
 
2607
        * Version 2.0.4 released.
 
2608
        =========================
 
2609
 
 
2610
 
 
2611
2001-06-27  David Turner <david@freetype.org>
 
2612
 
 
2613
        * builds/unix/ftconfig.in: Changed the definition of the
 
2614
        FT_CALLBACK_DEF macro.
 
2615
 
 
2616
        * include/freetype/ftconfig.h, src/*/*.c: Changed the definition and
 
2617
        use of the FT_CALLBACK_DEF macro in order to support 16-bit
 
2618
        compilers.
 
2619
 
 
2620
        * builds/unix/ftconfig.in: Changed the definition of the
 
2621
        FT_CALLBACK_DEF macro.
 
2622
 
 
2623
        * src/sfnt/ttload.c (TT_Load_Kern): The kern table loader now ensures
 
2624
        that the kerning table is correctly sorted (some problem fonts don't
 
2625
        have a correct kern table).
 
2626
 
 
2627
2001-06-26  Wolfgang Domr�se  <porthos.domroese@harz.de>
 
2628
 
 
2629
        * include/freetype/internal/ftstream.h (FT_GET_OFF3_LE): Fix typo.
 
2630
 
 
2631
2001-06-24  David Turner  <david@freetype.org>
 
2632
 
 
2633
        * src/base/ftcalc.c (ft_div64by32): Fixed the source to work
 
2634
        correctly on 16-bit systems.
 
2635
 
 
2636
2001-06-23  Anthony Fok  <fok@debian.org>
 
2637
 
 
2638
        * debian/*: Added Debian package build directory for 2.0.4.
 
2639
 
 
2640
2001-06-22  David Turner <david@freetype.org>
 
2641
 
 
2642
        * docs/PATENTS: Added patents disclaimer.  This one was missing!
 
2643
 
 
2644
        * docs/CHANGES, docs/todo: Updated for the upcoming 2.0.4 release.
 
2645
 
 
2646
2001-06-20  Werner Lemberg  <wl@gnu.org>
 
2647
 
 
2648
        * include/freetype/config/ftconfig.h: Add two more `L's to
 
2649
        constants.
 
2650
        Add missing semicolons.
 
2651
 
 
2652
        * builds/toplevel.mk: Do similar change as for
 
2653
        builds/unix/detect.mk.
 
2654
 
 
2655
        * include/freetype/freetype.h (FT_ENC_TAG): New version to make it
 
2656
        easier to redefine.
 
2657
        * include/freetype/ftimage.h (FT_IMAGE_TAG): Ditto.
 
2658
 
 
2659
        * src/pcf/pcfread.c (pcf_get_encodings): Add cast.
 
2660
 
 
2661
2001-06-19  David Turner  <david@freetype.org>
 
2662
 
 
2663
        * builds/win32/visualc/freetype.dsp, builds/win32/visualc/index.html:
 
2664
        Updated the Visual C++ project (for the 2.0.4 release).
 
2665
 
 
2666
        * builds/unix/detect.mk: Added rule for AIX detection (which uses
 
2667
        /usr/sbin/init instead of /sbin/init).
 
2668
 
 
2669
        * include/freetype/fterrors.h, src/*/*err*.h: Updated some of the
 
2670
        error macros to simplify handling of new error scheme.
 
2671
 
 
2672
2001-06-19  Werner Lemberg  <wl@gnu.org>
 
2673
 
 
2674
        * include/freetype/fttypes.h (FT_ERROR_MODULE): New macro.
 
2675
 
 
2676
2001-06-19  David Turner  <david@freetype.org>
 
2677
 
 
2678
        Removing _lots_ of compiler warnings when the most pedantic warning
 
2679
        levels of Visual C++ and Borland C++ are used.  Too many files to be
 
2680
        listed here, but FT2 now compiles without warnings with VC++ and the
 
2681
        "/W4" warning level (lint-style).
 
2682
 
 
2683
        * include/freetype/freetype.h (FT_New_Memory_Face): Updated
 
2684
        documentation.
 
2685
        * include/freetype/fttypes.h (FT_BOOL): New macro.
 
2686
        * include/freetype/internal/ftdebug.h: Add #pragma for Visual C++
 
2687
        to suppress warning.
 
2688
        * include/freetype/internal/ftstream.h (FT_GET_SHORT_{BE,LE},
 
2689
        FT_GET_OFF3_{BE,LE}, FT_GET_LONG_{BE,LE}): New macros.
 
2690
        (NEXT_*): Use them.
 
2691
        * src/autohint/ahglobal.c: Include FT_INTERNAL_DEBUG_H.
 
2692
        (FT_New_Memory_Face): Add `const' to function declaration.
 
2693
 
 
2694
2001-06-18  Werner Lemberg  <wl@gnu.org>
 
2695
 
 
2696
        Minor cleanups to remove compiler warnings.
 
2697
 
 
2698
        * include/freetype/cache/ftcmanag.h (FTC_MAX_BYTES_DEFAULT): Use
 
2699
        `L' for constant.
 
2700
        * include/freetype/config/ftoption.h (FT_RENDER_POOL_SIZE): Ditto.
 
2701
        * src/base/ftcalc.c (FT_MulDiv): Use `L' for constant.
 
2702
        * src/base/ftglyph.c (FT_Glyph_Get_CBox): Remove `error' variable.
 
2703
        * src/base/fttrigon.c (ft_trig_arctan_table): Use `L' for constants.
 
2704
        * src/base/ftobjs.c (FT_Done_Size): Fix return value.
 
2705
        (FT_Set_Char_Size, FT_Set_Pixel_Sizes, FT_Get_Kerning): Remove
 
2706
        unused `memory' variable.
 
2707
        * src/autohint/ahglyph.c (ah_get_orientation): Use `L' for constant.
 
2708
        * src/autohint/ahhint.c (ah_hint_edges_3,
 
2709
        ah_hinter_align_edge_points): Remove unused `before' and `after'
 
2710
        variables.
 
2711
        (ah_hinter_align_weak_points): Remove unused `edge_limit' variable.
 
2712
        (ah_hinter_load): Remove unused `new_advance', `start_contour',
 
2713
        and `metrics' variables.
 
2714
        * src/cff/cffload.c (CFF_Load_Encoding): Remove dead code to avoid
 
2715
        compiler warning.
 
2716
        * src/cff/cffobjs.c (CFF_Init_Face): Remove unused `base_offset'
 
2717
        variable.
 
2718
        * src/cff/cffgload.c (CFF_Parse_CharStrings): Remove unused
 
2719
        `outline' variable.
 
2720
        (cff_compute_bias): Use `U' for constant.
 
2721
        * src/cid/cidload.c (cid_decrypt): Ditto.
 
2722
        * src/psaux/psobjs.c (T1_Decrypt): Ditto.
 
2723
        * src/psaux/t1decode.c (T1_Decoder_Parse_CharStrings): Ditto.
 
2724
        * src/sfnt/ttload.c (TT_Load_Kern): Remove unused `version'
 
2725
        variable.
 
2726
        * src/sfnt/ttsbit.c (TT_Load_SBit_Image): Remove unused `top'
 
2727
        variable.
 
2728
        * src/truetype/ttgload.c (load_truetype_glyph): Remove unused
 
2729
        `num_contours' and `ins_offset' variables.
 
2730
        (compute_glyph_metrics): Remove unused `Top' and `x_scale'
 
2731
        variables.
 
2732
        (TT_Load_Glyph): Remove unused `memory' variable.
 
2733
        * src/smooth/ftgrays.c (grays_raster_render): Use `L' for constants.
 
2734
 
 
2735
2001-06-18  Werner Lemberg  <wl@gnu.org>
 
2736
 
 
2737
        Make the new error scheme source compatible with older FT versions
 
2738
        by introducing another layer.
 
2739
 
 
2740
        * include/freetype/fterrors.h (FT_ERRORDEF_, FT_NOERRORDEF_): New
 
2741
        macros.
 
2742
        (FT_NOERRORDEF): Removed.
 
2743
        * include/*/*err*.h: Use FT_ERRORDEF_ and FT_NOERRORDEF_.
 
2744
 
 
2745
2001-06-16  Werner Lemberg  <wl@gnu.org>
 
2746
 
 
2747
        * include/freetype/freetype.h (FT_ENC_TAG): New macro.
 
2748
        (FT_Encoding_): Use it.
 
2749
        * include/freetype/ftimage.h (FT_IMAGE_TAG): Define it
 
2750
        conditionally.
 
2751
 
 
2752
2001-06-14  David Turner  <david@freetype.org>
 
2753
 
 
2754
        Modified the TrueType interpreter to let it use the new
 
2755
        trigonometric functions provided in "fttrigon.h".  This gets rid of
 
2756
        some old 64-bit computation routines, as well as many warnings when
 
2757
        compiling the library with the "long long" 64-bit integer type.
 
2758
 
 
2759
        * include/freetype/config/ftoption.h: Undefine
 
2760
        FT_CONFIG_OPTION_OLD_CALCS.
 
2761
        * include/freetype/internal/ftcalc.h: Rearrange use of
 
2762
        FT_CONFIG_OPTION_OLD_CALCS.
 
2763
        * src/base/ftcalc.c: Add declaration of FT_Int64 if
 
2764
        FT_CONFIG_OPTION_OLD_CALCS isn't defined.
 
2765
        * src/truetype/ttinterp.c: Use FT_TRIGONOMETRY_H.
 
2766
        (Norm): Add a special version if FT_CONFIG_OPTION_OLD_CALCS isn't
 
2767
        defined.
 
2768
        (Current_Ratio, Normalize): Simplify code.
 
2769
 
 
2770
2001-06-11  Mike Owens  <MOwens@amtdatasouth.com>
 
2771
 
 
2772
        * src/base/ftcalc.c (FT_MulDiv, FT_DivFix, FT_Sqrt64): Remove
 
2773
        compiler warnings.
 
2774
 
 
2775
2001-06-08  Werner Lemberg  <wl@gnu.org>
 
2776
 
 
2777
        * builds/unix/configure.in: Renamed to ...
 
2778
        * builds/unix/configure.ac: This to make sure that autoconf 2.50 is
 
2779
        needed.
 
2780
        Run `autoupdate' on it.
 
2781
        Increase `version_info' to 7:0:1.
 
2782
        * builds/unix/configure: Regenerated.
 
2783
 
 
2784
2001-06-08  David Turner  <david@freetype.org>
 
2785
 
 
2786
        * src/autohint/ahhint.c (ah_hinter_load_glyph): Fixed a bug that
 
2787
        corrupted transformed glyphs that were auto-hinted (the transform
 
2788
        was applied twice).
 
2789
 
 
2790
        Fixed a bug that returned an invalid linear width for composite
 
2791
        TrueType glyphs.
 
2792
 
 
2793
        * include/internal/tttypes.h (TT_Loader_): Two new elements `linear'
 
2794
        and `linear_def'.
 
2795
        * src/truetype/ttgload.c (load_truetype_glyph,
 
2796
        compute_glyph_metrics): Use it.
 
2797
 
 
2798
        * include/fttypes.h (FT_ERROR_BASE): New macro.
 
2799
        * src/base/ftobjs.c (FT_Open_Face, FT_Render_Glyph_Internal): Use it
 
2800
        to make source code work with the new error scheme implemented by
 
2801
        Werner.
 
2802
        * src/base/ftoutln.c (FT_Outline_Render): Ditto.
 
2803
 
 
2804
2001-06-07  Werner Lemberg  <wl@gnu.org>
 
2805
 
 
2806
        Updating to libtool 1.4.0 and autoconf 2.50.
 
2807
 
 
2808
        * builds/unix/ltconfig: Removed.
 
2809
        * builds/unix/ltmain.sh, builds/unix/configure.in,
 
2810
        builds/unix/aclocal.m4: Updated.
 
2811
        * builds/unix/configure: Regenerated.
 
2812
 
 
2813
2001-06-06  Werner Lemberg  <wl@gnu.org>
 
2814
 
 
2815
        Complete redesign of error codes.  Please check ftmoderr.h for more
 
2816
        details.
 
2817
 
 
2818
        * include/freetype/internal/cfferrs.h,
 
2819
        include/freetype/internal/tterrors.h,
 
2820
        include/freetype/internal/t1errors.h: Removed.  Replaced with files
 
2821
        local to the module.  All extra error codes have been moved to
 
2822
        `fterrors.h'.
 
2823
 
 
2824
        * src/sfnt/ttpost.h: Move error codes to `fterrors.h'.
 
2825
 
 
2826
        * src/autohint/aherrors.h, src/cache/ftcerror.h, src/cff/cfferrs.h,
 
2827
        src/cid/ciderrs.h, src/pcf/pcferror.h, src/psaux/psauxerr.h,
 
2828
        src/psnames/psnamerr.h, src/raster/rasterrs.h, src/sfnt/sferrors.h,
 
2829
        src/smooth/ftsmerrs.h, src/truetype/tterrors.h,
 
2830
        src/type1/t1errors.h, src/winfonts/fnterrs.h: New files defining the
 
2831
        error names for the module it belongs to.
 
2832
 
 
2833
        * include/freetype/ftmoderr.h: New file, defining the module error
 
2834
        offsets.  Its structure is similar to `fterrors.h'.
 
2835
 
 
2836
        * include/freetype/fterrors.h (FT_NOERRORDEF): New macro.
 
2837
        (FT_ERRORDEF): Redefined to use module error offsets.
 
2838
        All internal error codes are now public; unused error codes have
 
2839
        been removed, some are new.
 
2840
 
 
2841
        * include/freetype/config/ftheader.h (FT_MODULE_ERRORS_H): New
 
2842
        macro.
 
2843
        * include/freetype/config/ftoption.h
 
2844
        (FT_CONFIG_OPTION_USE_MODULE_ERRORS): New macro.
 
2845
 
 
2846
        All other source files have been updated to use the new error codes;
 
2847
        some already existing (internal) error codes local to a module have
 
2848
        been renamed to give them the same name as in the base module.
 
2849
 
 
2850
        All make files have been updated to include the local error files.
 
2851
 
 
2852
2001-06-06  Werner Lemberg  <wl@gnu.org>
 
2853
 
 
2854
        * src/cid/cidtokens.h: Replaced with...
 
2855
        * src/cid/cidtoken.h: This file for 8+3 consistency.
 
2856
 
 
2857
        * src/raster/ftraster.c: Use macros for header file names.
 
2858
 
 
2859
        * src/include/freetype/tttables.h (TT_HoriHeader_, TT_VertHeader_):
 
2860
        Fix length of `Reserved' array.  Note that this isn't the real fix
 
2861
        since recent OpenType specs have introduced a `CaretOffset' field
 
2862
        instead of the first reserved byte.
 
2863
 
 
2864
2001-05-29  Werner Lemberg  <wl@gnu.org>
 
2865
 
 
2866
        * INSTALL: Minor fixes.
 
2867
 
 
2868
 
 
2869
        * Version 2.0.3 released.
 
2870
        =========================
 
2871
 
 
2872
 
 
2873
2001-05-29  David Turner  <david@freetype.org>
 
2874
 
 
2875
        * INSTALL, docs/CHANGES: Updated.
 
2876
 
 
2877
2001-05-25  David Turner  <david@freetype.org>
 
2878
 
 
2879
        Moved several documents from the top-level to the "docs" directory.
 
2880
 
 
2881
        * src/base/ftcalc.c (FT_DivFix): Small fix to return value.
 
2882
 
 
2883
2001-05-16  David Turner  <david@freetype.org>
 
2884
 
 
2885
        * src/truetype/ttgload.c (load_truetype_glyph): Fixed a bug in the
 
2886
        composite loader.  Spotted by Keith Packard.
 
2887
        * src/base/ftobjs.c (FT_GlyphLoader_Check_Points,
 
2888
        FT_GlyphLoader_Check_Subglyphs): Ditto.
 
2889
 
 
2890
2001-05-14  David Turner  <david@freetype.org>
 
2891
 
 
2892
        Fixed the incorrect blue zone computations, and improved the
 
2893
        composite support.  Note that these changes result in improved
 
2894
        rendering, while sometimes introducing their own artefacts.  This is
 
2895
        probably the last big change to the autohinter before the
 
2896
        introduction of a complete replacement.
 
2897
 
 
2898
        * src/autohint/ahglobal.c (sort_values): Fix loop.
 
2899
        * src/autohint/ahglyph.c: Removed some obsolete code.
 
2900
        (ah_outline_compute_edges): Modify code to set the ah_edge_round
 
2901
        flag.
 
2902
        (ah_outline_compute_blue_edges): Add code to compute active blue
 
2903
        zones.
 
2904
        * src/autohint/ahhint.c (ah_hinter_glyph_load): Change load_flags
 
2905
        value.
 
2906
 
 
2907
        * src/base/ftcalc.c (FT_DivFix): Fixed a bug in the 64-bit code that
 
2908
        created incorrect scale factors!
 
2909
        (FT_Round_Fix, FT_CeilFix, FT_FloorFix): Minor improvements.
 
2910
 
 
2911
2001-05-12  Werner Lemberg  <wl@gnu.org>
 
2912
 
 
2913
        * include/freetype/ftbbox.h: FTBBOX_H -> __FTBBOX_H__.
 
2914
        * include/freetype/fttrigon.h: __FT_TRIGONOMETRY_H__ ->
 
2915
        __FTTRIGON_H__.
 
2916
        Include FT_FREETYPE_H.
 
2917
        Beautified; added copyright.
 
2918
        * src/base/fttrigon.c: Beautified; added copyright.
 
2919
 
 
2920
2001-05-11  David Turner  <david@freetype.org>
 
2921
 
 
2922
        * src/cff/cffparse.c (cff_parse_font_matrix), src/cid/cidload.c
 
2923
        (parse_font_matrix), src/type1/t1load.c (parse_font_matrix): Fixed
 
2924
        the incorrect EM size computation.
 
2925
 
 
2926
        * include/freetype/fttrigon.h, src/base/fttrigon.c: New files,
 
2927
        adding trigonometric functions to the core API (using Cordic
 
2928
        algorithms).
 
2929
        * src/base/ftbase.c, src/base/Jamfile, src/base/rules.mk: Use them.
 
2930
 
 
2931
        * builds/newline: New file.
 
2932
        * builds/top_level.mk, builds/detect.mk: Use it.  This fixes
 
2933
        problems with Make on Windows 2000, as well as problems when "make
 
2934
        distclean" is invoked on a non-Unix platform when there is no
 
2935
        "config.mk" in the current directory.
 
2936
 
 
2937
        * builds/freetype.mk: Fixed a problem with object deletions under
 
2938
        Dos/Windows/OS/2 systems.
 
2939
 
 
2940
        Added new directory to hold tools and test programs.
 
2941
 
 
2942
        * docs/docmaker.py, docs/glnames.py: Moved to...
 
2943
        * src/tools/docmaker.py, src/tools/glnames.py: This place.
 
2944
        * src/tools/cordic.py: New file used to compute arctangent table
 
2945
        needed by fttrigon.c.
 
2946
        * src/tools/test_bbox.c, src/tools/test_trig.c: New test files.
 
2947
 
 
2948
        * src/tools/docmaker.py: Improved the script to add the current date
 
2949
        at the footer of each web page (useful to distinguish between
 
2950
        versions).
 
2951
 
 
2952
        * Jamfile: Fixed incorrect HDRMACRO argument.
 
2953
 
 
2954
        * TODO: Removed the cubic arc bbox computation note, since it has been
 
2955
        fixed recently.
 
2956
        * src/base/ftbbox.c (test_cubic_zero): Renamed to...
 
2957
        (test_cubic_extrema): This function.  Use `UL' for unsigned long
 
2958
        constants.
 
2959
 
 
2960
        * include/freetype/t1tables.h, include/freetype/config/ftoption.h:
 
2961
        Formatting.
 
2962
 
 
2963
2001-05-10  David Turner  <david@freetype.org>
 
2964
 
 
2965
        * src/base/ftobjs.c (FT_Open_Face): Fixed a small memory leak
 
2966
        which happened when trying to open 0-size font files!
 
2967
 
 
2968
2001-05-09  Werner Lemberg  <wl@gnu.org>
 
2969
 
 
2970
        * include/freetype/internal/ftcalc.h: Move declaration of
 
2971
        FT_SqrtFixed() out of `#ifdef FT_LONG64'.
 
2972
 
 
2973
2001-05-08  Francesco Zappa Nardelli  <Francesco.Zappa.Nardelli@ens.fr>
 
2974
 
 
2975
        * src/pcfdriver.c (PCF_Load_Glyph): Fixed incorrect bitmap width
 
2976
        computation.
 
2977
 
 
2978
2001-05-08  David Turner  <david@freetype.org>
 
2979
 
 
2980
        * docs/docmaker.py: Updated the DocMaker script in order to add
 
2981
        command line options (--output,--prefix,--title), fix the erroneous
 
2982
        line numbers reported during errors and warnings, and other
 
2983
        formatting issues.
 
2984
 
 
2985
        * src/base/ftcalc.c (FT_MulDiv, FT_MulFix, FT_DivFix): Various tiny
 
2986
        fixes related to rounding in 64-bits routines and
 
2987
        pseudo-"optimizations".
 
2988
 
 
2989
2001-04-27  David Turner  <david@freetype.org>
 
2990
 
 
2991
        * src/base/ftbbox.c (BBox_Cubic_Check): Fixed the coefficient
 
2992
        normalization algorithm (invalid final bit position, and invalid
 
2993
        shift computation).
 
2994
 
 
2995
2001-04-26  Werner Lemberg  <wl@gnu.org>
 
2996
 
 
2997
        * builds/unix/config.guess, builds/unix/config.sub: Updated to
 
2998
        latest versions from gnu.org.
 
2999
 
 
3000
        * builds/compiler/gcc-dev.mk: Add `-Wno-long-long' flag.
 
3001
 
 
3002
        * include/freetype/internal/ftcalc.h: Define FT_SqrtFixed()
 
3003
        uncoditionally.
 
3004
        * src/base/ftbbox.c: Include FT_INTERNAL_CALC_H.
 
3005
        Fix compiler warnings.
 
3006
        * src/base/ftcalc.c: Fix (potential) compiler warnings.
 
3007
 
 
3008
2001-04-26  David Turner  <david@freetype.org>
 
3009
 
 
3010
        * src/base/ftcalc.c (FT_SqrtFixed): Corrected/optimized the 32-bit
 
3011
        fixed-point square root computation.  It is now used even with
 
3012
        64-bits integers, as it is _much_ faster than calling FT_Sqrt64 :-)
 
3013
 
 
3014
        * src/base/ftbbox.c: Removed invalid "#include FT_BEZIER_H" line.
 
3015
 
 
3016
2001-04-25  David Turner  <david@freetype.org>
 
3017
 
 
3018
        * src/base/ftbbox.c (BBox_Cubic_Check): Rewrote function to use
 
3019
        direct computations with 16.16 values instead of sub-divisions.  It
 
3020
        is now slower, but proves a point :-)
 
3021
 
 
3022
        * src/raster/ftraster.c, src/smooth/ftgrays.c, src/base/ftbbox.c:
 
3023
        Fixed the bezier stack depths.
 
3024
 
 
3025
        * src/base/ftcalc.c (FT_MulFix): Minor rounding fix.
 
3026
 
 
3027
        * builds/beos: Added BeOS-specific files to the old build system
 
3028
        (no changes were necessary to support BeOS in the Jamfile though).
 
3029
 
 
3030
2001-04-20  David Turner  <david@freetype.org>
 
3031
 
 
3032
        * ftconfig.h, ftoption.h: Updated "ftconfig.h" to detect 64-bit int
 
3033
        types on platforms where Autoconf is not available).  Also removed
 
3034
        FTCALC_USE_LONG_LONG and replaced it with
 
3035
        FT_CONFIG_OPTION_FORCE_INT64.
 
3036
 
 
3037
        * builds/win32/freetype.dsp: Updated the Visual C++ project file.
 
3038
        Doesn't create a DLL yet.
 
3039
 
 
3040
        * cffgload.c: Removed a compilation warning.
 
3041
 
 
3042
2001-04-10  Tom Kacvinsky  <tkacvins@freetype.org>
 
3043
 
 
3044
        * t1load.c (parse_charstrings): Changed code for placing .notdef
 
3045
        glyph into slot 0 so that we no longer have a memory access
 
3046
        violation.
 
3047
 
 
3048
        * t1load.h: In structure T1_Loader, added swap_table (of type
 
3049
        PS_Table) to facilitate placing the .notdef glyph into slot 0.
 
3050
 
 
3051
2001-04-10  Francesco Zappa Nardelli  <francesco.zappa.nardelli@ens.fr>
 
3052
 
 
3053
        * src/pcf/pcfdriver.c (PCF_Get_Char_Index): Fix return value.
 
3054
 
 
3055
2001-04-09  Laurence Withers  <lwithers@lwithers.demon.co.uk>
 
3056
 
 
3057
        * builds/dos/detect.mk: Add support for bash.
 
3058
 
 
3059
2001-04-05  Werner Lemberg  <wl@gnu.org>
 
3060
 
 
3061
        * builds/os2/*.mk: These files have been forgotten to update to
 
3062
        the structure of similar makefiles.
 
3063
        * builds/dos/*.mk: Ditto.
 
3064
        * builds/ansi/*.mk: Ditto.
 
3065
 
 
3066
        * builds/win32/win32-def.mk (BUILD): Fix typo.
 
3067
 
 
3068
        * builds/compiler/*.mk (CLEAN_LIBRARY): Don't use NO_OUTPUT.
 
3069
        This is already used in the link_*.mk files.
 
3070
 
 
3071
2001-04-03  Werner Lemberg  <wl@gnu.org>
 
3072
 
 
3073
        * src/*/Jamfile: Slight changes to make files more cryptic.
 
3074
 
 
3075
2001-04-03  Werner Lemberg  <wl@gnu.org>
 
3076
 
 
3077
        * Jamfile, src/Jamfile, src/*/Jamfile: Formatted.  Slight changes
 
3078
        to give files identical structure.
 
3079
 
 
3080
2001-04-02  Werner Lemberg  <wl@gnu.org>
 
3081
 
 
3082
        * CHANGES: Reformatted, minor fixes.
 
3083
        * TODO: Updated.
 
3084
        * README: Formatting.
 
3085
        * include/freetype/freetype.h: Formatting.
 
3086
 
 
3087
        * Jamfile: Fix typo.
 
3088
 
 
3089
        * src/cff/cffparse.c: Move error code #defines to...
 
3090
        * include/freetype/internal/cfferrs.h: This file.
 
3091
        * src/cff/cffdrivr.c, src/cff/cffobjs.c, src/cff/cffload.c: Replaced
 
3092
        `FT_Err_*' with `CFF_Err_*'.
 
3093
        * src/cid/cidparse.c: Replaced `FT_Err_*' with `T1_Err_*'.
 
3094
        * src/psaux/psobjs.c, src/psaux/t1decode.c: Ditto.
 
3095
        * src/sfnt/sfobcs.c, src/sfnt/ttload.c: Replaced `FT_Err_*' with
 
3096
        `TT_Err_*'.
 
3097
        * src/truetype/ttgload.c, src/truetype/ttobjs.c: Ditto.
 
3098
        * src/type1/t1gload.c, src/type1/t1load.c, src/type1/t1objs.c,
 
3099
        src/type1/t1parse.c: Replaced `FT_Err_*' with `T1_Err_*'.
 
3100
 
 
3101
        * include/freetype/internal/cfferrs.h: Add
 
3102
        `CFF_Err_Unknown_File_Format'.
 
3103
        * include/freetype/internal/t1errors.h: Add
 
3104
        `T1_Err_Unknown_File_Format'.
 
3105
        * include/freetype/internal/tterrors.h: Add
 
3106
        `TT_Err_Unknown_File_Format'.
 
3107
 
 
3108
        * src/cff/cffload.h: Add `cff_*_encoding' and `cff_*_charset'
 
3109
        references.
 
3110
        * src/psaux/psobjs.c: Include `FT_INTERNAL_TYPE1_ERRORS_H'.
 
3111
 
 
3112
        * src/cff/cffobjs.c (CFF_Init_Face, CFF_Done_Face): Use
 
3113
        FT_LOCAL_DEF.
 
3114
        * src/cid/cidobjs.c (CID_Done_Driver): Ditto.
 
3115
        * src/trutype/ttobjs.c (TT_Init_Face, TT_Done_Face, TT_Init_Size):
 
3116
        Ditto.
 
3117
        * src/type1/t1objs.c (T1_Done_Driver): Ditto.
 
3118
        * src/pcf/pcfdriver.c (PCF_Done_Face): Ditto.
 
3119
        * src/pcf/pcf.h: Use FT_LOCAL for `PCF_Done_Face'.
 
3120
 
 
3121
2001-04-02  Tom Kacvinsky  <tkacvins@freetype.org>
 
3122
 
 
3123
        * src/sfnt/ttload.c (TT_Load_Metrics): Fix an improper pointer
 
3124
        dereference.  Submitted by Herbert Duerr <duerr@sun.com>
 
3125
 
 
3126
2001-03-26  Tom Kacvinsky  <tkacvins@freetype.org>
 
3127
 
 
3128
        * include/freetype/config/ftconfig.h: Changed hexadecimal
 
3129
        constants to use suffix U to avoid problems with HP-UX's c89
 
3130
        compiler.  Submitted by G.W. Lucas <glucas@sonalysts.com>
 
3131
 
 
3132
2001-03-24  David Turner  <david.turner@freetype.org>
 
3133
 
 
3134
        * Jamrules, Jamfile, src/Jamfile, src/*/Jamfile: Adding jamfiles to
 
3135
        the source tree.  See www.freetype.org/jam/index.html for details.
 
3136
 
 
3137
 
 
3138
        * Version 2.0.2 released.
 
3139
        =========================
 
3140
 
 
3141
 
 
3142
2001-03-20  Werner Lemberg  <wl@gnu.org>
 
3143
 
 
3144
        * builds/win32/detekt.mk: Fix .PHONY target for Intel compiler.
 
3145
 
 
3146
2001-03-20  David Turner  <david.turner@freetype.org>
 
3147
 
 
3148
        * include/freetype/config/ftheader.h, include/freetype/ftsnames.h:
 
3149
        Renamed "ftnames.h" to "ftsnames.h", and FT_NAMES_H to
 
3150
        FT_SFNT_NAMES_H.
 
3151
 
 
3152
        * docs/docmaker.py: Added generation of INDEX link in table of
 
3153
        contents.
 
3154
 
 
3155
        * INSTALL, docs/BUILD: Updated documentation to indicate that the
 
3156
        compilation process has changed slightly (no more `src' required in
 
3157
        the include path).
 
3158
 
 
3159
        * builds/*/*-def.mk: Changed the objects directory from "obj" to
 
3160
        "objs".
 
3161
 
 
3162
        * include/freetype/config/ftheader.h: Removed obsolete macros like
 
3163
        FT_SOURCE_FILE, etc. and added cache-specific macro definitions that
 
3164
        were previously defined in <freetype/ftcache.h>.  Added comments to
 
3165
        be included in a new API Reference section.
 
3166
 
 
3167
        * src/*/*: Removed the use of FT_SOURCE_FILE, etc.  Now, each
 
3168
        component needs to add its own directory to the include path at
 
3169
        compile time.  Modified all "rules.mk" and "descrip.mms"
 
3170
        accordingly.
 
3171
 
 
3172
2001-03-20  Werner Lemberg  <wl@gnu.org>
 
3173
 
 
3174
        * builds/unix/configure.in: Add $ft_version.
 
3175
        * builds/unix/freetype-config.in: Use it.
 
3176
        * builds/unix/configure: Updated.
 
3177
 
 
3178
2001-03-19  Tom Kacvinsky  <tkacvins@freetype.org>
 
3179
 
 
3180
        * src/type1/t1load.c (parse_font_matrix): Assign the units per em
 
3181
        value an unsigned short value, first by shifting right 16 bits,
 
3182
        then by casting the results to FT_UShort.
 
3183
 
 
3184
        * src/cff/cffparse.c (cff_parse_font_bbox): Assign the units per em
 
3185
        value an unsigned short value, first by shifting right 16 bits,
 
3186
        then by casting the results to FT_UShort.
 
3187
 
 
3188
2001-03-17  David Turner  <david.turner@freetype.org>
 
3189
 
 
3190
        * src/cid/cidobjs.c, src/cid/cidload.c, src/pcf/pcfread.c,
 
3191
        src/type1/t1load.c, src/type1/t1objs.c: Added a few casts to remove
 
3192
        compiler warnings in pedantic modes.
 
3193
 
 
3194
        * include/config/ft2build.h, include/config/ftheader.h: The file
 
3195
        "ft2build.h" was renamed to "ftheader.h" to avoid conflicts with the
 
3196
        top-level <ft2build.h>.
 
3197
 
 
3198
        * include/config/ftheader.h: Added new section describing the #include
 
3199
        macros.
 
3200
 
 
3201
2001-03-17  Tom Kacvinsky  <tkacvins@freetype.org>
 
3202
 
 
3203
        * src/cff/cffparse.c (cff_parse_font_bbox): Obtain rounded FT_Fixed
 
3204
        values for the bounding box numbers.
 
3205
 
 
3206
        * src/cff/cffobjs.c (CFF_Init_Face): When processing a CFF/CEF font,
 
3207
        set `root->ascender' (`root->descender') to the integer part of
 
3208
        `root->bbox.yMax' (`root->bbox.yMin', respectively).
 
3209
 
 
3210
2001-03-16  Tom Kacvinsky  <tkacvins@freetype.org>
 
3211
 
 
3212
        * src/cff/cffdrivr.c (get_cff_glyph_name):  New function.  Used in
 
3213
        cff_get_interface to facilitate getting a glyph name for glyph index
 
3214
        via FT_Get_Glyph_Name().
 
3215
 
 
3216
        (cff_get_interface): Added support for getting a glyph name via the
 
3217
        "glyph_name" module interface.  Uses the new function
 
3218
        get_cff_glyph_name().
 
3219
        Submitted by Sander van der Wal <svdwal@xs4all.nl>
 
3220
 
 
3221
        * src/cff/cffobjs.c (CFF_Init_Face): Logical or the face flags with
 
3222
        FT_FACE_FLAG_GLYPH_NAMES only if FT_CONFIG_OPTION_NO_GLYPH_NAMES is
 
3223
        not defined.  This is to add support for getting a glyph name from a
 
3224
        glyph index via FT_Get_Glyph_Name().
 
3225
        Submitted by Sander van der Wal <svdwal@xs4all.nl>
 
3226
 
 
3227
        * src/cff/cffgload.c (CFF_Parse_CharStrings): Added support for
 
3228
        deprecated operator "dotsection".
 
3229
        Submitted by Sander van der Wal <svdwal@xs4all.nl>
 
3230
 
 
3231
2001-03-12  Werner Lemberg  <wl@gnu.org>
 
3232
 
 
3233
        * src/psaux/t1decode.c (T1_Decoder_Parse_Charstrings): Fix error
 
3234
        messages.
 
3235
 
 
3236
        * INSTALL, docs/BUILD: We need GNU make 3.78.1 or newer.
 
3237
 
 
3238
2001-03-12  Tom Kacvinsky  <tkacvins@freetype.org>
 
3239
 
 
3240
        * include/freetype/internal/psaux.h:  Changed the lenIV member of
 
3241
        the T1_Decoder_ struct to be an FT_Int instead of an FT_UInt.
 
3242
 
 
3243
        * src/psaux/t1decode.c (T1_Decoder_Parse_Charstrings):  Adjust
 
3244
        for lenIV seed bytes at the start of a decrypted subroutine.
 
3245
 
 
3246
        * src/cid/cidload.c (cid_read_subrs): Decrypt subroutines only
 
3247
        if lenIV >= 0.
 
3248
 
 
3249
        * src/cid/cidgload.c (cid_load_glyph): Decrypt charstrings only
 
3250
        if lenIV >= 0.
 
3251
 
 
3252
2001-03-11  Werner Lemberg  <wl@gnu.org>
 
3253
 
 
3254
        * TODO: Updated.
 
3255
 
 
3256
        * src/pcf/pcfread.c: Put READ_Fields() always in a conditional to
 
3257
        avoid compiler warnings.
 
3258
 
 
3259
2001-03-10  Tom Kacvinsky  <tkacvins@freetype.org>
 
3260
 
 
3261
        * TODO: New file.
 
3262
 
 
3263
        * include/freetype/freetype.h: Added prototypes and notes for
 
3264
        three new functions: FT_RoundFix, FT_CeilFix, and FT_FloorFix.
 
3265
        * src/base/ftcalc.c (FT_RoundFix, FT_CeilFix, FT_FloorFix): Added
 
3266
        implementation code.
 
3267
 
 
3268
        * src/cid/cidobjs.c (CID_Init_Face): Use calculated units_per_EM,
 
3269
        and if that is not available, default to 1000 units per EM.  Changed
 
3270
        assignment code for ascender and descender values.
 
3271
        * src/cid/cidload.c (parse_font_matrix): Added units_per_EM
 
3272
        processing.
 
3273
        (parse_font_bbox): Changed to use FT_Fixed number handling.
 
3274
 
 
3275
        * src/type1/t1objs.c (T1_Init_Face): Changed the assignment code
 
3276
        for ascender, descender, and max_advance_width.
 
3277
        * src/type1/t1load.c (parse_font_bbox): Changed to use FT_Fixed
 
3278
        number handling.
 
3279
 
 
3280
2001-03-10  Henrik Grubbstr�m  <grubba@roxen.com>
 
3281
 
 
3282
        * src/*/*.c: Added many casts to make code more 64bit-safe.
 
3283
 
 
3284
2001-03-07  Werner Lemberg  <wl@gnu.org>
 
3285
 
 
3286
        * INSTALL, docs/BUILD: We need GNU make 3.78 or newer.
 
3287
 
 
3288
2001-03-07  Tom Kacvinsky  <tkacvins@freetype.org>
 
3289
 
 
3290
        * src/type1/t1objs.c (T1_Init_Face): Minor correction: We must wait
 
3291
        until parse_font_bbox is changed before we use logical shift rights
 
3292
        in the assignments of `root->ascender', `root->descender', and
 
3293
        `root->max_advance_width'.
 
3294
 
 
3295
        (T1_Done_Face): Free `char_name' table to avoid a memory leak.
 
3296
        Submitted by Sander van der Wal <svdwal@xs4all.nl>.
 
3297
 
 
3298
2001-03-05  Tom Kacvinsky  <tkacvins@freetype.org>
 
3299
 
 
3300
        * src/cff/cffgload.c (CFF_Load_Glyph): Set glyph control data to the
 
3301
        the Type 2 glyph charstring (used by conversion programs).
 
3302
        Submitted by Ha Shao <hashao@chinese.com>.
 
3303
 
 
3304
2001-03-04  Antoine Leca  <Antoine.Leca@renault.fr>
 
3305
 
 
3306
        * include/freetype/ttnameid.h: Correct a stupid typo which prevented
 
3307
        correct compilation (TT_MS_LANGID_TIGRIGNA_ETHIOPIA appeared twice).
 
3308
 
 
3309
2001-03-04  Werner Lemberg  <wl@gnu.org>
 
3310
 
 
3311
        * src/autohint/ahtypes.h (AH_Hinter): Add elements
 
3312
        `disable_horz_edges', `disable_vert_edges'.
 
3313
        * src/autohint/ahhint.c (ah_hint_edges_3, ah_hinter_hint_edges): Use
 
3314
        them (and remove static variables with the same names).
 
3315
        * src/pcf/pcfutil.c (BitOrderInvert): Add `const'.
 
3316
        * docs/glnames.py: Updated to latest pstables.h changes.
 
3317
 
 
3318
        * builds/unix/detect.mk: Add test for Hurd.
 
3319
        * builds/hurd/detect.mk: Removed.
 
3320
 
 
3321
2001-03-04  Sander van der Wal  <svdwal@xs4all.nl>
 
3322
 
 
3323
        * src/psnames/pstables.h: Add more `const'.
 
3324
        * src/pcf/pcfutil.c: Ditto.
 
3325
 
 
3326
2001-03-04  Werner Lemberg  <wl@gnu.org>
 
3327
 
 
3328
        * src/base/ftglyph.c (FT_Glyph_To_Bitmap): Fixing typo
 
3329
        (FT_Glyph_Done -> FT_Done_Glyph).
 
3330
 
 
3331
2001-03-01  Antoine Leca  <Antoine.Leca@renault.fr>
 
3332
 
 
3333
        * include/freetype/ttnameid.h: Added some new Microsoft language
 
3334
        codes and LCIDs as found in Office Xp.
 
3335
 
 
3336
2001-02-28  David Turner  <david.turner@freetype.org>
 
3337
 
 
3338
        * builds/hurd/detect.mk: New file.  Added support to detect the GNU
 
3339
        Hurd operating system as Unix-like.  Fix submitted by Anthony Fok
 
3340
        <foka@debian.org>.
 
3341
 
 
3342
        * src/type1/t1gload.c (T1_Load_Glyph): Set glyph control data to the
 
3343
        the Type 1 glyph charstring (used by conversion programs).
 
3344
        Submitted by Ha Shao <hashao@chinese.com>.
 
3345
 
 
3346
2001-02-22  David Turner  <david.turner@freetype.org>
 
3347
 
 
3348
        * src/base/ftgrays.c (grays_sweep): The function didn't exit
 
3349
        immediately if `num_cells' was 0 as it should.  Thanks to Boris for
 
3350
        finding this out.
 
3351
 
 
3352
        * src/base/ftglyph.c (FT_Glyph_To_Bitmap): Fixed memory leak when
 
3353
        bitmap rendering fails (thanks to Graham Asher).
 
3354
 
 
3355
2001-02-13  Werner Lemberg  <wl@gnu.org>
 
3356
 
 
3357
        * docs/docmaker.py (DocSection::add_element): Use
 
3358
        `self.print_error()'.
 
3359
 
 
3360
        * builds/unix/config.{guess,sub}: Updated (from ftp.gnu.org).
 
3361
 
 
3362
2001-02-13  David Turner  <david.turner@freetype.org>
 
3363
 
 
3364
        * docs/docmaker.py, include/freetype/*.h: Updated the DocMaker
 
3365
        script to support chapters and section block ordering.  Updated the
 
3366
        public header files accordingly.
 
3367
 
 
3368
        * src/base/ftglyph.c (FT_Glyph_Copy): Advance width and glyph format
 
3369
        were not correctly copied.
 
3370
 
 
3371
2001-02-08  Tom Kacvinsky  <tkacvins@freetype.org>
 
3372
 
 
3373
        * src/cff/cffparse.c (cff_parse_font_matrix): Removed an
 
3374
        unnecessary fprintf( stderr, ... ).
 
3375
 
 
3376
2001-02-07  Tom Kacvinsky  <tkacvins@freetype.org>
 
3377
 
 
3378
        * src/type1/t1objs.c (T1_Init_Face): Added code to get the
 
3379
        units_per_EM from the value assigned in parse_font_matrix, if
 
3380
        available.  Default to 1000 if not available.
 
3381
 
 
3382
        * src/cff/cffparse.c (cff_parse_font_matrix): Added logic to get
 
3383
        the units_per_EM from the FontMatrix.
 
3384
 
 
3385
        (cff_parse_fixed_thousand): New function. Gets a real number from
 
3386
        the CFF font, but multiplies by 1000 (this is to avoid rounding
 
3387
        errors when placing this real number into a 16.16 fixed number).
 
3388
 
 
3389
        (cff_parse_real): Added code so that the integer part is moved
 
3390
        into the high sixteen bits of the 16.16 fixed number.
 
3391
 
 
3392
        * src/cff/cffobjs.c (CFF_Init_Face): Added logic to get the units
 
3393
        per EM from the CFF dictionary, if available.
 
3394
 
 
3395
        * include/freetype/internal/cfftypes.h: In struct CFF_Font_Dict_,
 
3396
        added a units_per_em member to facilitate passing of units_per_em
 
3397
        from function cff_parse_font_matrix.
 
3398
 
 
3399
        * src/type1/t1load.c (is_alpha): Make `-' a legal alphanumeric
 
3400
        character.  This is so that font names with `-' are fully parsed,
 
3401
        etc...
 
3402
 
 
3403
2001-02-02  Werner Lemberg  <wl@gnu.org>
 
3404
 
 
3405
        * src/psaux/psobjs.c (shift_elements): Remove if clause (which is
 
3406
        obsolete now).
 
3407
 
 
3408
        (reallocate_t1_table, PS_Table_Done): Replace REALLOC() with ALLOC()
 
3409
        + MEM_Copy() to avoid a memory bug.
 
3410
 
 
3411
2001-02-01  David Turner  <david.turner@freetype.org>
 
3412
 
 
3413
        * docs/docmaker.py: Improved the index sorting routine to place
 
3414
        capital letters before small ones.  Added the "<order>" marker to
 
3415
        section blocks in order to give the order of blocks.
 
3416
 
 
3417
2001-01-30  Antoine Leca  <Antoine.Leca@renault.fr>
 
3418
 
 
3419
        * include/freetype/ttnameid.h: Latest updates to Microsoft language
 
3420
        ID codes.
 
3421
 
 
3422
2001-01-24  Tom Kacvinsky  <tkacvins@freetype.org>
 
3423
 
 
3424
        * src/cff/t1load.c (parse_font_matrix): Added heuristic to get
 
3425
        units_per_EM from the font matrix.
 
3426
 
 
3427
        (parse_dict): Deleted test to see whether the FontInfo keyword has
 
3428
        been seen.  Deletion of this test allows fonts without FontInfo
 
3429
        dictionaries to be parsed by the Type 1 driver.
 
3430
 
 
3431
        (T1_Open_Face): Deleted empty subroutines array test to make sure
 
3432
        fonts with no subroutines still are parsed.
 
3433
 
 
3434
2001-01-17  Francesco Zappa Nardelli  <francesco.zappa.nardelli@ens.fr>
 
3435
 
 
3436
        * src/pcfread.c (pcf_get_properties, pcf_get_metrics,
 
3437
        pcf_get_bitmaps): Fix compiler errors.
 
3438
 
 
3439
2001-01-11  David Turner  <david.turner@freetype.org>
 
3440
 
 
3441
        * src/pcf/pcfread.c: Removed some compilation warnings related
 
3442
        to comparison of signed vs. unsigned integers.
 
3443
 
 
3444
        * include/freetype/internal/ftdebug.h: Changed the debug trace
 
3445
        constants from trace_t2xxxx to trace_cffxxxx to be able to compile
 
3446
        the CFF driver in debug mode.
 
3447
 
 
3448
2001-01-11  Matthew Crosby  <mcrosby@marthon.org>
 
3449
 
 
3450
        * builds/unix/freetype-config.in: Fix problems with separate
 
3451
        --prefix and --exec-prefix.
 
3452
 
 
3453
2001-01-11  David Turner  <david.turner@freetype.org>
 
3454
 
 
3455
        * docs/docmaker.py: Added cross-references generation as well as
 
3456
        more robust handling of pathname wildcard matching.
 
3457
 
 
3458
2001-01-10  Werner Lemberg  <wl@gnu.org>
 
3459
 
 
3460
        * docs/docmaker.py: Minor improvements to reduce unwanted spaces
 
3461
        and empty lines in output.
 
3462
 
 
3463
2001-01-09  David Turner  <david.turner@freetype.org>
 
3464
 
 
3465
        * docs/docmaker.py: Improved script to generate table of contents
 
3466
        and index pages.  It also supports wildcards on non Unix systems.
 
3467
 
 
3468
        * include/freetype/*.h, include/freetype/cache/*.h: Updated comments
 
3469
        to include section definitions/delimitations for the API Reference
 
3470
        generator.
 
3471
 
 
3472
        * include/freetype/freetype.h: Moved declaration of
 
3473
        `FT_Generic_Finalizer' and the `FT_Generic' structure to...
 
3474
        * include/freetype/fttypes.h: here.
 
3475
 
 
3476
2001-01-04  Werner Lemberg  <wl@gnu.org>
 
3477
 
 
3478
        * include/freetype/ttnameid.h: Updated Unicode code range comments.
 
3479
 
 
3480
2001-01-03  Tom Kacvinsky  <tkacvins@freetype.org>
 
3481
 
 
3482
        * src/cff/rules.mk: Use cffgload.{c,h} instead of t2gload.{c,h}.
 
3483
 
 
3484
        * include/freetype/internal/internal.h: Changed to use cfftypes.h
 
3485
        (cfferrs.h) instead of t2types.h (t2errors.h, respectively).
 
3486
 
 
3487
        * include/freetype/internal/cfftypes.h: Merged in changes from
 
3488
        t2types.h and made this the canonical `types' header for the CFF
 
3489
        driver.
 
3490
 
 
3491
        * include/freetype/internal/t2types.h: This file was merged with
 
3492
        cfftypes.h and is no longer necessary.
 
3493
 
 
3494
        * include/freetype/internal/t2errors.h: Renamed to cfferrs.h.
 
3495
 
 
3496
        * src/cff/cffobjs.c, src/cff/cffobjs.h, src/cff/cffparse.c,
 
3497
        src/cff/cffdrivr.c, src/cff/cff.c, src/cff/cffload.c,
 
3498
        src/cff/cffgload.c, src/cff/cffgload.h: Changed to use
 
3499
        cffgload.{c,h} instead of t2gload.{c,h}.  All occurences of t2_
 
3500
        (T2_) were replaced with cff_ (CFF_, respectively).
 
3501
 
 
3502
        * src/cff/t2gload.h: Renamed cffgload.h.
 
3503
 
 
3504
        * src/cff/t2gload.c: Renamed cffgload.c
 
3505
 
 
3506
2000-01-02  Jouk Jansen  <joukj@hrem.stm.tudelft.nl>
 
3507
 
 
3508
        * builds/vms: Support files for VMS architecture added.
 
3509
        * descrip.mms, src/*/descrip.mms: VMS makefiles added.
 
3510
        * README.VMS: New file.
 
3511
 
 
3512
2000-01-01  Werner Lemberg  <wl@gnu.org>
 
3513
 
 
3514
        * LICENSE.TXT: Added info about PCF driver license.
 
3515
 
 
3516
2001-01-01  Francesco Zappa Nardelli  <francesco.zappa.nardelli@ens.fr>
 
3517
 
 
3518
        * src/pcf/*: New driver module for PCF font format (used in
 
3519
        X Window System).
 
3520
        * include/freetype/internal/ftdebug.h (FT_Trace): Added values for
 
3521
        PCF driver.
 
3522
        * include/freetype/internal/pcftypes.h: New file.
 
3523
        * include/freetype/config/ftmodule.h: Added PCF driver module.
 
3524
 
 
3525
2001-01-01  Werner Lemberg  <wl@gnu.org>
 
3526
 
 
3527
        * src/winfonts/winfnt.c (FNT_Get_Char_Index): Fix parameter type.
 
3528
 
 
3529
2000-12-31  Werner Lemberg  <wl@gnu.org>
 
3530
 
 
3531
        * builds/modules.mk (clean_module_list): Fixed deletion of module
 
3532
        file in case `make make_module_list' is called before `make setup'.
 
3533
 
 
3534
2000-12-30  Werner Lemberg  <wl@gnu.org>
 
3535
 
 
3536
        * src/cff/cffload.c (CFF_Load_Charset): Improved error messages.
 
3537
        (CFF_Load_Charset, CFF_Load_Encoding): Remove unnecessary variable
 
3538
        definition.
 
3539
 
 
3540
2000-12-30  Tom Kacvinsky  <tkacvins@freetype.org>
 
3541
 
 
3542
        * include/freetype/internal/t2types.h,
 
3543
        include/freetype/internal/cfftypes.h: Changed the structures for
 
3544
        CFF_Encoding and CFF_Encoding for the new implementations of the
 
3545
        charset and encoding parsers in the CFF driver.
 
3546
 
 
3547
        * src/cff/t2gload.c (t2_lookup_glyph_by_stdcharcode,
 
3548
        t2_operator_seac): Added these functions for use in implementing the
 
3549
        seac emulation provided by the Type 2 endchar operator.
 
3550
        (T2_Parse_CharStrings): Added seac emulation for the endchar
 
3551
        operator.
 
3552
 
 
3553
        * src/cff/cffload.c (CFF_Load_Encoding, CFF_Load_Charset,
 
3554
        CFF_Done_Encoding, CFF_Done_Charset): Extended to load and parse the
 
3555
        charset/encoding tables, and free the memory used by them when the
 
3556
        CFF driver is finished with them.  Added tables
 
3557
 
 
3558
            cff_isoadobe_charset
 
3559
            cff_expert_charset
 
3560
            cff_expertsubset_charset
 
3561
            cff_standard_encoding
 
3562
            cff_expert_encoding
 
3563
 
 
3564
        so that the encoding/charset parser can handle predefined encodings and
 
3565
        charsets.
 
3566
 
 
3567
2000-12-24  Tom Kacvinsky  <tkacvins@freetype.org>
 
3568
 
 
3569
        * src/cff/t2gload.c (T2_Load_Glyph): Added code so that the font
 
3570
        transform is applied.
 
3571
 
 
3572
        * src/cff/cffparse.c (cff_parse_font_matrix): Added code so that
 
3573
        the font matrix numbers are scaled by 1/(matrix->yy).  Also, the
 
3574
        offset vector now contains integer values instead of 16.16 fixed
 
3575
        numbers.
 
3576
 
 
3577
2000-12-22  Tom Kacvinsky  <tkacvins@freetype.org>
 
3578
 
 
3579
        * src/autohint/ahhint.c (ah_hinter_load_glyph):
 
3580
        Removed unnecessary comments and commented-out code.
 
3581
 
 
3582
2000-12-21  David Turner  <david.turner@freetype.org>
 
3583
 
 
3584
        * src/cid/cidafm.c, src/cid/cidafm.h: removed un-needed files,
 
3585
        we'll work on supporting CID AFM files later I guess :-)
 
3586
 
 
3587
2000-12-21  Tom Kacvinsky  <tkacvins@freetype.org>
 
3588
 
 
3589
        * src/autohint/ahhint.c (ah_hinter_load, ah_hinter_load_glyph):
 
3590
        Changed so that fonts with a non-standard FontMatrix render
 
3591
        correctly.  Previously, the first glyph rendered from such a
 
3592
        font did not have the tranformation matrix applied.
 
3593
 
 
3594
2000-12-17  Werner Lemberg  <wl@gnu.org>
 
3595
 
 
3596
        * *.mk: Added lots of `.PHONY' targets.
 
3597
 
 
3598
2000-12-17  Karsten Fleischer  <kfleisc1@ford.com>
 
3599
 
 
3600
        * *.mk: Implemented `platform' target to disable auto-detection.
 
3601
 
 
3602
2000-12-14  Werner Lemberg  <wl@gnu.org>
 
3603
 
 
3604
        * docs/design/modules.html: Removed.  Covered by design-*.html.
 
3605
 
 
3606
        * INSTALL: Added info about makepp.
 
3607
 
 
3608
2000-12-14  David Turner  <david.turner@freetype.org>
 
3609
 
 
3610
        Added support for clipped direct rendering in the smooth renderer.
 
3611
        This should not break binary compatibility of existing applications.
 
3612
 
 
3613
        * include/freetype/fttypes.h, include/freetype/ftimage.h: Move
 
3614
        definition of the FT_BBox structure from the former to the latter.
 
3615
        * include/freetype/ftimage.h: Add `ft_raster_flag_clip' value to
 
3616
        FT_Raster_Flag enumeration.
 
3617
        Add `clip_box' element to FT_Raster_Params structure.
 
3618
        * src/smooth/ftgrays.c (grays_convert_glyph): Implement it.
 
3619
 
 
3620
        * INSTALL: Updated installation instructions on Win32, listing the
 
3621
        new "make setup list" target used to list supported
 
3622
        compilers/targets.
 
3623
 
 
3624
        * src/raster/ftraster.c (ft_black_render): Test for unsupported
 
3625
        direct rendering before testing arguments.
 
3626
 
 
3627
2000-12-13  David Turner  <david.turner@freetype.org>
 
3628
 
 
3629
        * include/freetype/config/ft2build.h,
 
3630
        include/freetype/internal/internal.h: Fixed header inclusion macros
 
3631
        to use direct definitions.  This is the only way to do these things
 
3632
        in a portable way :-(  The rest of the code should follow shortly
 
3633
        though everything compiles now.
 
3634
 
 
3635
        * builds/compiler/intelc.mk, builds/compiler/watcom.mk: New files.
 
3636
 
 
3637
        * builds/win32/detect.mk: Added support for the Intel C/C++
 
3638
        compiler, as well as _preliminary_ (read: doesn't work!) support for
 
3639
        Watcom.  Also added a new setup target.  Type "make setup list" for
 
3640
        a list of supported command-line compilers on Win32.
 
3641
 
 
3642
        * src/base/ftdebug.c: Added dummy symbol to avoid empty file if
 
3643
        conditionals are off.
 
3644
 
 
3645
2000-12-13  Werner Lemberg  <wl@gnu.org>
 
3646
 
 
3647
        * builds/unix/ftsystem.c: Fixed typos.  Fixed inclusion of wrong
 
3648
        ftconfig.h file.
 
3649
 
 
3650
2000-12-12  Werner Lemberg  <wl@gnu.org>
 
3651
 
 
3652
        * include/freetype/config/ft2build.h (FT2_ROOT, FT2_CONFIG_ROOT):
 
3653
        Removed.  ANSI C doesn't (explicitly) allow macro expansion in
 
3654
        arguments using `##'.
 
3655
        (FT2_PUBLIC_FILE, FT2_CONFIG_FILE, FT2_INTERNAL_FILE): Use directory
 
3656
        names directly.  Make them configurable.  Use `##' to strip leading
 
3657
        and trailing spaces from arguments.
 
3658
 
 
3659
        * builds/unix/ft2unix.h: Adapted.
 
3660
 
 
3661
        * src/base/ftsystem.c (ft_alloc, ft_realloc, ft_free, ft_io_stream,
 
3662
        ft_close_stream): Use FT_CALLBACK_DEF.
 
3663
 
 
3664
        * builds/unix/ftsystem.c: Use new header scheme.
 
3665
        (FT_Done_Memory): Use free() from FT_Memory structure.
 
3666
 
 
3667
        * src/base/ftinit.c, src/base/ftmac.c: Header scheme fixes.
 
3668
 
 
3669
2000-12-11  Werner Lemberg  <wl@gnu.org>
 
3670
 
 
3671
        * include/freetype/config/ft2build.h (FT2_CONFIG_ROOT,
 
3672
        FT2_PUBLIC_FILE, FT2_CONFIG_FILE, FT2_INTERNAL_FILE,
 
3673
        FT_SOURCE_FILE): Use `##' operator to be really ANSI C compliant.
 
3674
 
 
3675
2000-12-09  Werner Lemberg  <wl@gnu.org>
 
3676
 
 
3677
        * builds/unix/detect.mk: Remove unused USE_CFLAGS variable.
 
3678
 
 
3679
2000-12-08  Werner Lemberg  <wl@gnu.org>
 
3680
 
 
3681
        * */*.h: Changed body inclusion macro names to start and end with
 
3682
        `__' (those which haven't converted yet).  Fixed minor conversion
 
3683
        issues.
 
3684
 
 
3685
        * src/winfonts/winfnt.c: Updated to new header inclusion scheme.
 
3686
 
 
3687
        * src/truetype/ttinterp.c: Remove unused CALC_Length() macro.
 
3688
 
 
3689
2000-12-07  David Turner  <david.turner@freetype.org>
 
3690
 
 
3691
        * */*.[ch]: Changed source files to adhere to the new
 
3692
        header inclusion scheme.  Not completely tested but works for now
 
3693
        here.
 
3694
 
 
3695
        * src/cff/t2driver.c: Renamed and updated to...
 
3696
        * src/cff/cffdrivr.c: New file.
 
3697
        * src/cff/t2driver.h: Renamed and updated to...
 
3698
        * src/cff/cffdrivr.h: New file.
 
3699
        * src/cff/t2load.c: Renamed and updated to...
 
3700
        * src/cff/cffload.c: New file.
 
3701
        * src/cff/t2load.h: Renamed and updated to...
 
3702
        * src/cff/cffload.h: New file.
 
3703
        * src/cff/t2objs.c: Renamed and updated to...
 
3704
        * src/cff/cffobjs.c: New file.
 
3705
        * src/cff/t2objs.h: Renamed and updated to...
 
3706
        * src/cff/cffobjs.h: New file.
 
3707
        * src/cff/t2parse.c: Renamed and updated to...
 
3708
        * src/cff/cffparse.c: New file.
 
3709
        * src/cff/t2parse.h: Renamed and updated to...
 
3710
        * src/cff/cffparse.h: New file.
 
3711
        * src/cff/t2tokens.h: Renamed and updated to...
 
3712
        * src/cff/cfftoken.h: New file.
 
3713
 
 
3714
        * src/cff/cff.c, src/cff/rules.mk: Updated.
 
3715
 
 
3716
2000-12-06  David Turner  <david.turner@freetype.org>
 
3717
 
 
3718
        * src/cache/ftlru.c (FT_Lru_Done): Fixed memory leak.
 
3719
 
 
3720
2000-12-06  Werner Lemberg  <wl@gnu.org>
 
3721
 
 
3722
        * builds/module.mk: Replaced `xxx #' with `xxx$(space).
 
3723
        * builds/os2/detekt.mk, builds/win32/detekt.mk: Moved comment to
 
3724
        avoid trailing spaces in variable.
 
3725
        * builds/freetype.mk: Use $(D) instead of $D to make statement more
 
3726
        readable.
 
3727
 
 
3728
        * docs/docmaker.py: Formatting.
 
3729
 
 
3730
2000-12-05  David Turner  <david.turner@freetype.org>
 
3731
 
 
3732
        * src/psaux/psauxmod.c: Fixed a broken inclusion of component
 
3733
        header files (an FT_FLAT_COMPILE test was missing).
 
3734
 
 
3735
        * src/cache/ftcmanag.c (FTC_Manager_Done): Fixed a bug that caused
 
3736
        an occasional crash when the function was called (due to a dangling
 
3737
        pointer).
 
3738
 
 
3739
        * src/base/ftsystem.c (FT_Done_Memory): Fixed an obvious bug:
 
3740
        The ANSI "free()" function was called instead of "memory->free()".
 
3741
 
 
3742
        * docs/docmaker.py: Added section filtering, multi-page generation
 
3743
        (index page generation is still missing though).
 
3744
 
 
3745
2000-12-04  David Turner  <david.turner@freetype.org>
 
3746
 
 
3747
        * builds/unix/install.mk, builds/unix/ft2unix.h: The file "ft2unix.h"
 
3748
        is now installed as <ft2build.h> for Unix systems.  Note that we
 
3749
        still use the "freetype2/freetype" installation path for now.
 
3750
 
 
3751
        * */*.[ch]: Now using <ft2build.h> as the default build and setup
 
3752
        configuration file in all public headers.  Internal source files
 
3753
        still need some changes though.
 
3754
 
 
3755
        * builds/devel/ft2build.h, builds/devel/ftoption.h: Created a new
 
3756
        directory to hold all development options for both the Unix and
 
3757
        Win32 developer builds.
 
3758
 
 
3759
        * builds/win32/detect.mk, builds/win32/w32-bccd.mk,
 
3760
        builds/win32/w32-dev.mk: Changed the developer build targets to
 
3761
        "devel-gcc" and "devel-bcc" in order to be able to develop with the
 
3762
        Borland C++ compiler.
 
3763
 
 
3764
2000-12-01  David Turner  <david.turner@freetype.org>
 
3765
 
 
3766
 
 
3767
        * Version 2.0.1 released.
 
3768
        =========================
 
3769
 
 
3770
 
 
3771
        * builds/unix/configure.in, builds/unix/configure,
 
3772
        builds/cygwin/configure.in, builds/cygwin/configure: Setting
 
3773
        "version_info" to 6:1:0 for the 2.0.1 release.
 
3774
 
 
3775
        * CHANGES: Added a summary of changes between 2.0.1 and 2.0.
 
3776
 
 
3777
        * builds/unix/ftconfig.in, builds/cygwin/ftconfig.in: Changes
 
3778
        to allow compilation under Unix with the Unix-specific config
 
3779
        files.
 
3780
 
 
3781
2000-12-01  Werner Lemberg  <wl@gnu.org>
 
3782
 
 
3783
        * INSTALL: Revised.
 
3784
        * builds/compiler/bcc-dev.mk, builds/compiler/visualage.mk,
 
3785
        builds/compiler/bcc.mk, builds/win32/w32-bcc.mk,
 
3786
        builds/win32/w32-bccd.mk: Revised.
 
3787
        * include/freetype/config/ftbuild.h,
 
3788
        include/freetype/internal/internal.h: Revised.
 
3789
        * include/freetype/ftimage.h: Updated to new header inclusion scheme.
 
3790
 
 
3791
2000-11-30  Werner Lemberg  <wl@gnu.org>
 
3792
 
 
3793
        * builds/toplevel.mk (.PHONY): Adding `distclean'.
 
3794
        * builds/unix/detect.mk (.PHONY): Adding `devel', `unix', `lcc',
 
3795
        `setup'.
 
3796
 
 
3797
2000-11-30  David Turner  <david.turner@freetype.ogr>
 
3798
 
 
3799
        * INSTALL: Slightly updated the quick starter documentation to
 
3800
        include IDE compilation, prevent against BSD Make, and specify "make
 
3801
        setup" instead of a single "make" for build configuration.
 
3802
 
 
3803
        * include/config/ftbuild.h, include/internal/internal.h: Added new
 
3804
        configuration files used to determine the location of all public,
 
3805
        configuration, and internal header files for FreeType 2.  Modified
 
3806
        all headers under "include/freetype" to reflect this change.  Note
 
3807
        that we still need to change the library source files themselves
 
3808
        though.
 
3809
 
 
3810
        * builds/compiler/bcc.mk, builds/compiler/bcc-dev.mk,
 
3811
        builds/win32/w32-bcc.mk, builds/win32/w32-bccd.mk,
 
3812
        builds/win32/detect.mk: Added new files to support compilation with
 
3813
        the free Borland C++ command-line compiler.  Modified the detection
 
3814
        rules to recognize the new "bcc32" target in "make setup bcc32".
 
3815
 
 
3816
        * src/sfnt/ttcmap.c, src/sfnt/ttpost.c, src/sfnt/ttsbit.c,
 
3817
        src/truetype/ttobjs.c, src/truetype/ttgload.c,
 
3818
        src/truetype/ttinterp.c: Fixed a few comparisons that Borland C++
 
3819
        didn't really like.  Basically, this compiler complains when FT_UInt
 
3820
        is compared to FT_UShort (apparently, it promotes `UShort' to `Int'
 
3821
        in these cases).
 
3822
 
 
3823
2000-11-30  Tom Kacvinsky  <tkacvins@freetype.org>
 
3824
 
 
3825
        * t2objs.c (T2_Init_Face): Added calculation of `face->height' for
 
3826
        pure CFF fonts.
 
3827
 
 
3828
        * t1objs.c (T1_Init_Face): Fixed computation of `face->height'.
 
3829
 
 
3830
2000-11-29  David Turner  <david.turner@freetype.org>
 
3831
 
 
3832
        * src/base/ftbbox.c (BBox_Conic_Check): Fixed a really stupid
 
3833
        bug in the formula used to compute the conic B�zier extrema
 
3834
        of non-monotonous arcs.
 
3835
 
 
3836
2000-11-29  Werner Lemberg  <wl@gnu.org>
 
3837
 
 
3838
        * src/base/ftcalc.c (FT_SqrtFixed), src/base/ftobjs.c
 
3839
        (FT_Set_Renderer): Use FT_EXPORT_DEF.
 
3840
        * src/cache/ftcimage.c (FTC_Image_Cache_Lookup),
 
3841
        src/cache/ftcmanag.c (FTC_Manager_Done, FTC_Manager_Reset,
 
3842
        FTC_Manager_Lookup_Face, FTC_Manager_Lookup_Size,
 
3843
        FTC_Manager_Register_Cache), src/cache/ftcsbits.c
 
3844
        (FTC_SBit_Cache_Lookup): Ditto.
 
3845
 
 
3846
        * src/include/freetype/cache/ftcglyph.h (FTC_GlyphNode_Init),
 
3847
        src/include/freetype/ftmac.h (FT_New_Face_From_FOND): Use FT_EXPORT.
 
3848
 
 
3849
2000-11-29  Werner Lemberg  <wl@gnu.org>
 
3850
 
 
3851
        * src/sfnt/sfdriver.c: Include ttsbit.h and ttpost.h only
 
3852
        conditionally.
 
3853
 
 
3854
        * src/truetype/ttdriver.c (Set_Char_Sizes, Set_Pixel_Sizes): Set
 
3855
        `size->strike_index' only conditionally.
 
3856
 
 
3857
        * src/type1/t1driver.c, src/type1/t1objs.c: Include t1afm.h only
 
3858
        conditionally.
 
3859
 
 
3860
        * src/winfonts/winfnt.h: Move all type definitions to...
 
3861
        * src/include/freetype/internal/fnttypes.h: New file.
 
3862
        * src/winfonts/winfnt.c: Use it.
 
3863
 
 
3864
2000-11-29  ??? ???  <darin@eazel.com>
 
3865
 
 
3866
        * include/freetype/internal/ftdebug.h: Replaced FT_CAT and FT_XCAT
 
3867
        with a direct solution (which also satifies picky compilers).
 
3868
 
 
3869
2000-11-28  YAMANO-UCHI Hidetoshi  <mer@din.or.jp>
 
3870
 
 
3871
        * src/truetype/ttobjs.c (TT_Init_Size): Fix #ifdef's to work with
 
3872
        disabled interpreter also.
 
3873
 
 
3874
        * src/base/ftnames.c (FT_Get_Sfnt_Name_Count): Fix incorrect
 
3875
        parentheses.
 
3876
 
 
3877
2000-11-26  Tom Kacvinsky  <tkacvins@freetype.org>
 
3878
 
 
3879
        * src/cff/t2gload.c (T2_Parse_CharStrings): Added logic to glyph
 
3880
        width setting code to take into account even/odd argument counts
 
3881
        and glyph width operand before endchar/hmoveto/vmoveto.
 
3882
 
 
3883
2000-11-26  Werner Lemberg  <wl@gnu.org>
 
3884
 
 
3885
        * builds/ansi/ansi.mk: Fix inclusion order of files.
 
3886
 
 
3887
2000-11-26  Keith Packard  <keithp@keithp.com>
 
3888
 
 
3889
        * src/type1/t1objs.c (T1_Init_Face): Compute style flags.
 
3890
 
 
3891
2000-11-26  Werner Lemberg  <wl@gnu.org>
 
3892
 
 
3893
        * builds/compiler/ansi-cc.mk (CLEAN_LIBRARY): Fix rule and
 
3894
        conditional.
 
3895
 
 
3896
2000-11-23  Werner Lemberg  <wl@gnu.org>
 
3897
 
 
3898
        * src/type1/t1load.c (parse_subrs, parse_charstrings): Use decrypt
 
3899
        function from PSAux module.
 
3900
 
 
3901
        * src/type1/t1parse.c (T1_Done_Parse): Renamed to...
 
3902
        (T1_Finalize_Parser): New function (to avoid name clash with a
 
3903
        function in the PSAux module).
 
3904
        (T1_Decrypt): Removed since it is duplicated in the PSAux module.
 
3905
        (T1_Get_Private_Dict): Added `psaux' as new parameter; use decrypt
 
3906
        function from PSAux module.
 
3907
 
 
3908
        * src/type1/t1parse.h: Adapted.
 
3909
 
 
3910
2000-11-22  Tom Kacvinsky  <tkacvins@freetype.org>
 
3911
 
 
3912
        * src/cff/t2objs.c (T2_Init_Face): For pure CFF fonts, set
 
3913
        `root->num_faces' to `cff->num_faces' and set `units_per_EM'
 
3914
        to 1000.
 
3915
 
 
3916
        * src/cff/t2parse.c (parse_t2_real): Fixed real number parsing
 
3917
        loop.
 
3918
 
 
3919
        * src/cff/t2load.c (T2_Get_String): Called T2_Get_Name with a
 
3920
        sid that was off by one.
 
3921
 
 
3922
2000-11-16  David Turner  <david@freetype.org>
 
3923
 
 
3924
        * src/autohint/ahtypes.h (AH_Hinter): Added new fields to control
 
3925
        auto-hinting of synthetic Type 1 fonts.
 
3926
 
 
3927
        * src/autohint/ahhint.c (ah_hinter_load, ah_hinter_load_glyph):
 
3928
        Added auto-hinting support of synthetic Type 1 fonts.
 
3929
 
 
3930
2000-11-12  Tom Kacvinsky  <tkacvins@freetype.org>
 
3931
 
 
3932
        * src/sfnt/ttload.c (TT_LookUp_Table, TT_Load_Generic_Table): Change
 
3933
        tracing output.
 
3934
 
 
3935
        * src/sfnt/sfobjs.c (SFNT_Load_Face): Set boolean variable
 
3936
        `has-outline' to true only if the font has a `glyf' or `CFF ' table.
 
3937
 
 
3938
2000-11-11  Werner Lemberg  <wl@gnu.org>
 
3939
 
 
3940
        * builds/win32/visualc/freetype.dsp: Fix raster1->raster and
 
3941
        type1z->type1.
 
3942
 
 
3943
2000-11-11  Tom Kacvinsky  <tkacvins@freetype.org>
 
3944
 
 
3945
        * builds/unix/freetype-config.in, builds/cygwin/freetype-config.in:
 
3946
        Added a --libtool option.  When freetype-config --libtool is
 
3947
        invoked, the absolute path to the libtool convenience library
 
3948
        is returned.
 
3949
 
 
3950
2000-11-11  Werner Lemberg  <wl@gnu.org>
 
3951
 
 
3952
        * builds/cygwin/cygwin-def.in: Same fix as previous.
 
3953
 
 
3954
2000-11-10  Tom Kacvinsky  <tkacvins@freetype.org>
 
3955
 
 
3956
        * builds/unix/unix-def.in: Add
 
3957
 
 
3958
            INSTALL_PROGRAM := @INSTALL_PROGRAM@
 
3959
            INSTALL_SCRIPT  := @INSTALL_SCRIPT@
 
3960
 
 
3961
        so that installation of freetype-config does not fail.
 
3962
 
 
3963
2000-11-10  Werner Lemberg  <wl@gnu.org>
 
3964
 
 
3965
        * builds/cygwin/freetype-config.in, builds/unix/freetype-config.in:
 
3966
        Move test down for empty --exec-prefix.
 
3967
        Fix --version.
 
3968
 
 
3969
        * builds/cygwin/install.mk, builds/unix/install.mk: Use
 
3970
        $(INSTALL_SCRIPT) for installation of freetype-config.
 
3971
 
 
3972
        * builds/cygwin/install.mk: Fix clean target names.
 
3973
 
 
3974
2000-11-09  David Turner  <david@freetype.org>
 
3975
 
 
3976
 
 
3977
        * Version 2.0 released.
 
3978
        =======================
 
3979
 
 
3980
 
 
3981
Local Variables:
 
3982
version-control: never
 
3983
coding: latin-1
 
3984
End: