blob: 2376263b381963d1d7b0fdac986366663aa2fff1 [file] [log] [blame]
Werner Lemberg607dec72007-05-15 06:49:37 +000012007-05-15 Graham Asher <graham.asher@btinternet.com>
2
3 * src/autofit/afcjk.c (af_cjk_hints_compute_edges): Remove unused
4 variable.
5 * src/autofit/afloader.c (af_loader_load_g): Ditto.
6
7 * src/base/ftobjs.c (ft_validator_error): Use `ft_jmp_buf'.
8 (open_face_from_buffer): Initialize `stream'.
9 (FT_Request_Metrics): Remove unused variable.
10 Remove redundant `break' statements.
11 (FT_Get_Track_Kerning): Remove unused variable.
12
13 * src/psaux/afmparse.c (afm_parse_track_kern, afm_parse_kern_pairs,
14 afm_parse_kern_data): Remove redundant
15 `break' statements.
16 (afm_parser_parse): Ditto.
17 Don't use uninitialized variables.
18
19 * src/psnames/psmodule.c (VARIANT_BIT): Define as unsigned long.
20 Use `|' operator instead of `^' to set it.
21 Update all users.
22
23 * src/sfnt/ttcmap.c (tt_face_build_cmaps): Use `ft_jmp_buf'.
24 * src/sfnt/ttkern.c (tt_face_load_kern): Remove unused variable.
25
26 * src/truetype/ttgload.c (TT_Load_Simple_Glyph): Remove redundant
27 comparison.
28 (TT_Process_Simple_Glyph): Use FT_UInt for `n_points' and `i'.
29 (TT_Load_Glyph): Remove unused variable.
30
Werner Lemberg8d463a52007-05-13 16:01:55 +0000312007-05-13 Derek Clegg <dclegg@apple.com>
32
33 * src/base/ftobjs.c (FT_New_Library): Only allocate rendering pool
34 if FT_RENDER_POOL_SIZE is > 0. From Savannah patch #5928.
35
David Turner711cf842007-05-11 14:36:24 +0000362007-05-11 David Turner <david@freetype.org>
37
Werner Lemberg56ceaa42007-05-14 18:53:58 +000038 * src/cache/ftbasic.c, include/freetype/ftcache.h
39 (FTC_ImageCache_LookupScaler, FTC_SBit_Cache_LookupScaler): Two new
40 functions that allow us to look up glyphs using an FTC_Scaler object
41 to specify the size, making it possible to use fractional pixel
42 sizes.
43
44 * src/truetype/ttobjs.c (tt_size_ready_bytecode): Set
45 `size->cvt_ready'. Reported by Boris Letocha.
David Turner711cf842007-05-11 14:36:24 +000046
Werner Lemberg94be20e2007-05-09 20:02:55 +0000472007-05-09 Graham Asher <graham.asher@btinternet.com>
48
49 * src/truetype/ttinterp.c (Ins_IP), src/autofit/aflatin.c
50 (af_latin_metrics_scale_dim): Fix compiler warnings.
51
Werner Lemberg41271032007-05-06 04:51:48 +0000522007-05-06 Werner Lemberg <wl@gnu.org>
53
54 * builds/win32/visualce/freetype.sln: Removed, as requested by
55 Vincent.
56
Werner Lembergdf49e692007-05-04 06:30:05 +0000572007-05-04 Vincent RICHOMME <richom.v@free.fr>
58
59 * builds/win32/visualce/*: Add Visual C++ project files for Pocket
60 PC targets.
61
62 * docs/CHANGES: Document them.
63
642007-05-04 <harry@kdevelop.org>
Werner Lemberg5077e832007-05-04 06:13:46 +000065
66 * builds/unix/ftsystem.c (FT_Stream_Open): Handle return value 0 of
67 mmap (which might happen on some RTOS). From Savannah patch #5909.
68
Werner Lemberg106eaf12007-05-03 07:07:47 +0000692007-05-03 Werner Lemberg <wl@gnu.org>
70
71 * src/base/ftobjs.c (FT_Set_Char_Size): Simplify code.
72 * include/freetype/freetype.h (FT_Set_Char_Size): Update
73 documentation.
74
Werner Lemberg1b5267d2007-04-28 21:06:15 +0000752007-04-28 Victor Stinner <victor.stinner@inl.fr>
76
77 * src/sfnt/sfobjs.c (sfnt_load_face): Check error code after loading
78 `cmap'.
79
Werner Lembergcc712a22007-04-27 17:16:50 +0000802007-04-27 Werner Lemberg <wl@gnu.org>
81
82 * src/truetype/ttgload.c (TT_Load_Simple_Glyph): Check for negative
83 number of points in contours. Problem reported by Victor Stinner
84 <victor.stinner@haypocalc.com>.
85 (TT_Process_Simple_Glyph): Synchronize variable types.
86
Werner Lemberg45bb18f2007-04-26 06:26:35 +0000872007-04-26 Werner Lemberg <wl@gnu.org>
88
89 * src/base/ftglyph.c (FT_Glyph_Copy): Always set second argument to
90 zero in case of error. This fixes Savannah bug #19689.
91
David Turnera8b45e62007-05-11 14:10:30 +0000922007-04-25 Boris Letocha <b.letocha@cz.gmc.net>
93
94 * src/truetype/ttobjs.c: fix a typo that created a speed regression
95 in the TrueType bytecode loader
96
Werner Lembergfcc1f472007-04-10 11:51:50 +0000972007-04-10 Martin Horak <horakm@centrum.cz>
98
99 * src/sfnt/sfobjs.c (sfnt_load_face) [FT_CONFIG_OPTION_INCREMENTAL]:
100 Ignore `hhea' table. This fixes Savannah bug #19261.
101
Werner Lemberg14bf82e2007-04-10 04:09:49 +00001022007-04-09 Werner Lemberg <wl@gnu.org>
103
104 * Version 2.3.4 released.
105 =========================
106
107
108 Tag sources with `VER-2-3-4'.
109
110 * docs/CHANGES, docs/VERSION.DLL: Update documentation and bump
111 version number to 2.3.4.
112
113 * README, Jamfile (RefDoc), builds/win32/visualc/index.html,
114 builds/win32/visualc/freetype.dsp,
115 builds/win32/visualc/freetype.vcproj: s/2.3.3/2.3.4/, s/233/234/.
116
117 * include/freetype/freetype.h (FREETYPE_PATCH): Set to 4.
118
119 * builds/unix/configure.raw (version_info): Set to 9:15:3.
120
Werner Lembergf4a52a62007-04-09 08:40:11 +00001212007-04-09 Martin Horak <horakm@centrum.cz>
122
123 * src/truetype/ttgload.c (load_truetype_glyph): Save and restore
124 memory stream to avoid a crash with the incremental memory
125 interface (Savannah bug #19260).
126
David Turner1dcb4442007-04-06 08:19:04 +00001272007-04-06 David Turner <david@freetype.org>
128
Werner Lembergc81cf612007-04-06 09:28:23 +0000129 * src/base/ftbimap.c (ft_bitmap_assure_buffer): Fix buffer-overwrite bug
130 (Savannah bug #19536).
David Turner1dcb4442007-04-06 08:19:04 +0000131
Werner Lemberg9f83e052007-04-05 02:28:23 +00001322007-04-04 Werner Lemberg <wl@gnu.org>
133
134 * Version 2.3.3 released.
135 =========================
136
137
138 Tag sources with `VER-2-3-3'.
139
140 * docs/CHANGES: Mention CVE-2007-1351.
141
David Turner7338ec22007-04-03 14:30:34 +00001422007-04-03 David Turner <david@freetype.org>
143
144 * src/base/ftobjs.c (FT_Set_Char_Size): As suggested by James Cloos,
Werner Lemberg74781972007-04-03 19:39:28 +0000145 if one of the resolution values is 0, treat it as if it were the
146 same as the other value.
David Turner7338ec22007-04-03 14:30:34 +0000147
David Turnere6472c12007-04-02 13:13:54 +00001482007-04-02 David Turner <david@freetype.org>
149
Werner Lemberg94f12272007-04-03 07:19:53 +0000150 Add special code to detect `extra-light' fonts and do not snap their
151 stem widths too much to avoid bizarre hinting effects.
152
153 * src/autofit/aflatin.h (AF_LatinAxisRec): Add `standard_width' and
154 `extra_light' members.
155
156 * src/autofit/aflatin.c (af_latin_metrics_init_widths): Initialize
157 them.
158 (af_latin_metrics_scale_dim): Set `extra_light'.
159 (af_latin_compute_stem_width): Use `extra_light'.
David Turnere6472c12007-04-02 13:13:54 +0000160
David Turner3f539692007-03-28 14:53:40 +00001612007-03-28 David Turner <david@freetype.org>
162
Werner Lemberg644b1ad2007-03-28 21:17:11 +0000163 * src/base/ftbitmap.c (ft_bitmap_assure_buffer): Fix zero-ing of the
David Turner3f539692007-03-28 14:53:40 +0000164 padding.
165
Werner Lemberga08b2172007-03-28 07:17:17 +00001662007-03-28 Werner Lemberg <wl@gnu.org>
167
168 * src/bdf/bdflib.c (setsbit, sbitset): Handle values >= 128
169 gracefully.
170 (_bdf_set_default_spacing): Increase `name' buffer size to 256 and
Werner Lemberg9f83e052007-04-05 02:28:23 +0000171 issue an error for longer names. This fixes CVE-2007-1351.
Werner Lemberga08b2172007-03-28 07:17:17 +0000172 (_bdf_parse_glyphs): Limit allowed number of glyphs in font to the
173 number of code points in Unicode.
174
Werner Lemberg644b1ad2007-03-28 21:17:11 +0000175 * builds/win32/visualc/index.html,
176 builds/win32/visualc/freetype.dsp,
Werner Lemberg14bf82e2007-04-10 04:09:49 +0000177 builds/win32/visualc/freetype.vcproj, README: s/2.3.2/2.3.3/,
Werner Lemberg644b1ad2007-03-28 21:17:11 +0000178 s/232/233/.
179
180 * docs/CHANGES: Mention ftdiff.
181
David Turner3b242d32007-03-26 12:03:04 +00001822007-03-26 David Turner <david@freetype.org>
183
Werner Lemberg644b1ad2007-03-28 21:17:11 +0000184 * src/truetype/ttinterp.c [FIX_BYTECODE]: Remove it and
185 corresponding code.
186 (Ins_MD): Last regression fix.
David Turner3b242d32007-03-26 12:03:04 +0000187
Werner Lemberga08b2172007-03-28 07:17:17 +0000188 * src/autofit/aflatin.c (af_latin_metrics_init_blues): Fix blues
Werner Lemberg644b1ad2007-03-28 21:17:11 +0000189 computations in order to ignore single-point contours. These are
190 never rasterized and correspond in certain fonts to mark-attach
191 points that are very far from the glyph's real outline, ruining the
192 computation.
David Turnerf58caa02007-03-26 12:39:25 +0000193
Werner Lemberga08b2172007-03-28 07:17:17 +0000194 * src/autofit/afloader.c (af_loader_load_g): In the case of
195 monospaced fonts, always set `rsb_delta' and `lsb_delta' to 0.
196 Otherwise code that uses them will most certainly ruin the fixed
197 advance property.
David Turner23553d62007-03-26 13:37:17 +0000198
Werner Lemberg644b1ad2007-03-28 21:17:11 +0000199 * docs/CHANGES, docs/VERSION.DLL, README, Jamfile (RefDoc): Update
200 documentation and bump version number to 2.3.3.
201
202 * include/freetype/freetype.h (FREETYPE_PATCH): Set to 3.
203
204 * builds/unix/configure.raw (version_info): Set to 9:14:3.
David Turner23553d62007-03-26 13:37:17 +0000205
Suzuki, Toshiya (鈴木俊哉)86a3ee72007-03-26 05:40:55 +00002062007-03-26 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
207
Werner Lemberg644b1ad2007-03-28 21:17:11 +0000208 * builds/unix/ftconfig.in: Disable Carbon framework dependency on
209 64bit ABI on Mac OS X 10.4.x (ppc & i386). Found by Sean McBride.
Suzuki, Toshiya (鈴木俊哉)86a3ee72007-03-26 05:40:55 +0000210 * builds/vms/ftconfig.h: Ditto.
211 * include/freetype/config/ftconfig.h: Ditto.
212
Suzuki, Toshiya (鈴木俊哉)4bcf9572007-03-22 04:53:45 +00002132007-03-22 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
214
Werner Lemberg14ffe092007-03-22 06:12:43 +0000215 * builds/unix/ftsystem.c (FT_Stream_Open): Temporary fix to prevent
216 32bit unsigned long overflow by 64bit filesize on LP64 platform, as
Suzuki, Toshiya (鈴木俊哉)dabf0532007-03-22 05:23:53 +0000217 proposed by Sean McBride:
218 http://lists.gnu.org/archive/html/freetype-devel/2007-03/msg00032.html
219
2202007-03-22 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
221
Suzuki, Toshiya (鈴木俊哉)4bcf9572007-03-22 04:53:45 +0000222 * builds/unix/ftconfig.in: Suppress SGI compiler's warning against
223 setjmp, proposed by Sean McBride:
224 http://lists.gnu.org/archive/html/freetype-devel/2007-03/msg00032.html
225
Suzuki, Toshiya (鈴木俊哉)6fb74f62007-03-19 06:30:26 +00002262007-03-19 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
227
Werner Lembergc9f6c662007-03-21 13:30:14 +0000228 * builds/unix/configure.raw: Dequote `OS_INLINE' in comment of
229 conftest.c, to avoid unexpected shell evaluation. Possibly it is a
230 bug or undocumented behaviour of autoconf.
Suzuki, Toshiya (鈴木俊哉)6fb74f62007-03-19 06:30:26 +0000231
David Turner74c34eb2007-03-18 07:19:31 +00002322007-03-18 David Turner <david@freetype.org>
233
Werner Lembergc9f6c662007-03-21 13:30:14 +0000234 * src/truetype/ttinterp.c (Ins_MDRP): Another bytecode regression
235 fix; testing still needed.
David Turner74c34eb2007-03-18 07:19:31 +0000236
Werner Lembergc9f6c662007-03-21 13:30:14 +0000237 * src/truetype/ttinterp.c (Ins_MD): Another bytecode regression fix.
David Turner64a9ef22007-03-18 07:35:08 +0000238
David Turner89020d92007-03-17 17:48:57 +00002392007-03-17 David Turner <david@freetype.org>
240
Werner Lembergc9f6c662007-03-21 13:30:14 +0000241 * src/truetype/ttinterp.c (Ins_IP): Fix wrong handling of the
242 (undocumented) twilight zone special case.
David Turner89020d92007-03-17 17:48:57 +0000243
Werner Lemberg25d592a2007-03-09 07:59:35 +00002442007-03-09 Werner Lemberg <wl@gnu.org>
245
246 * Version 2.3.2 released.
247 =========================
248
249
250 Tag sources with `VER-2-3-2'.
251
252 * builds/win32/visualc/index.html,
253 builds/win32/visualc/freetype.dsp,
Werner Lemberg14bf82e2007-04-10 04:09:49 +0000254 builds/win32/visualc/freetype.vcproj, README: s/2.3.1/2.3.2/,
Werner Lemberg25d592a2007-03-09 07:59:35 +0000255 s/231/232/.
256
David Turner3a51afa2007-03-08 10:50:38 +00002572007-03-08 David Turner <david@freetype.org>
258
Werner Lemberg25d592a2007-03-09 07:59:35 +0000259 * docs/CHANGES, docs/VERSION.DLL: Updated for upcoming release.
David Turner121cad52007-03-08 16:43:50 +0000260
Werner Lemberg25d592a2007-03-09 07:59:35 +0000261 * builds/unix/configure.raw (version_info): Set to 9:13:3.
262
263 * include/freetype/freetype.h (FREETYPE_PATCH): Set to 2.
264
265 * README, Jamfile (RefDoc): s/2.3.1/2.3.2/.
David Turner121cad52007-03-08 16:43:50 +0000266
Werner Lemberg1e259de2007-03-08 15:39:21 +0000267 * src/base/ftutil.c (ft_mem_strcpyn): Fix a bug that prevented the
268 function to work properly, over-writing user-provided buffers in
269 some cases. Reported by James Cloos <cloos@jhcloos.com>.
David Turner3a51afa2007-03-08 10:50:38 +0000270
David Turner121cad52007-03-08 16:43:50 +0000271
Werner Lemberg3d92f082007-03-06 11:59:24 +00002722007-03-05 Werner Lemberg <wl@gnu.org>
273
274 * include/freetype/config/ftstdlib.h (ft_strstr): New wrapper
275 macro for `strstr'.
276
277 * src/truetype/ttobjs.c (tt_face_init): Use ft_strstr for scanning
278 `trick_names', as suggested by Ivan Nincic.
279
David Turner085bc6e2007-03-05 17:40:03 +00002802007-03-05 David Turner <david@freetype.org>
281
Werner Lembergd112cf02007-03-06 12:06:56 +0000282 * src/base/ftinit.c (FT_Init_FreeType): Fix a small memory leak in
283 case FT_Init_FreeType fails for some reason. Problem reported by
284 Maximilian Schwerin <maximilian.schwerin@buelowssiege.de>.
David Turnerdddd0682007-03-05 18:23:25 +0000285
Werner Lembergd112cf02007-03-06 12:06:56 +0000286 * src/truetype/ttobs.c (tt_size_init_bytecode): Clear the `x_ppem'
287 and `y_ppem' fields of the `TT_Size.metrics' structure, not those of
288 `TT_Size.root.metrics'. Problem reported by Daniel Glöckner
289 <daniel-gl@gmx.net>.
David Turner91aaf322007-03-05 18:18:52 +0000290
Werner Lembergd112cf02007-03-06 12:06:56 +0000291 * src/type1/t1afm.c (T1_Read_PFM): Read kerning values as 16-bit
292 signed values, not unsigned ones. Problem reported by Johannes
293 Walther <joh_walt@yahoo.de>.
David Turner085bc6e2007-03-05 17:40:03 +0000294
David Turner601aefe2007-02-21 16:47:49 +00002952007-02-21 David Turner <david@freetype.org>
296
Werner Lembergde5e6862007-02-25 21:06:43 +0000297 * src/pshinter/pshalgo.c (psh_hint_align): Fix a bug in the hinting
298 of small and ghost stems in the Postscript interpreter.
David Turner601aefe2007-02-21 16:47:49 +0000299
Suzuki, Toshiya (鈴木俊哉)b68e0252007-02-20 02:37:36 +00003002007-02-20 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
301
302 * src/base/ftmac.c (FT_GetFileRef_From_Mac_ATS_Name): Fix memory
303 leak, patch by "Jjgod Jiang" <gzjjgod@gmail.com>.
304 * builds/mac/ftmac.c (FT_GetFileRef_From_Mac_ATS_Name): Ditto.
305
Werner Lemberga0915172007-02-16 08:12:50 +00003062007-02-16 Werner Lemberg <wl@gnu.org>
307
308 * src/truetype/ttinterp.c (Ins_MD): Remove unused variable.
309 * src/autofit/aflatin.c (af_latin_hints_link_segments): Ditto.
310
David Turner2c4500e2007-02-14 15:08:47 +00003112007-02-14 David Turner <david@freetype.org>
312
Werner Lemberg3cd6cc22007-02-16 08:10:17 +0000313 It seems that the following changes fix most of the known
314 interpreter problems with my fonts, but more testing is needed,
315 though.
316
317 * src/truetype/ttinterp.c (FIX_BYTECODE): Activate.
318 (TT_MulFix14): Rewrite.
319 (Ins_MD, Ins_MDRP, Ins_IP) [FIX_BYTECODE]: Improved and updated.
320 (Ins_MIRP): Ditto.
David Turner2c4500e2007-02-14 15:08:47 +0000321
Werner Lembergc6a14082007-02-12 22:08:15 +00003222007-02-12 Werner Lemberg <wl@gnu.org>
323
324 * src/truetype/ttinterp.c (Project_x, Project_y): Remove compiler
325 warnings.
326
327 * src/pcf/pcfread.c (pcf_interpret_style), src/bdf/bdfdrivr.c
328 (bdf_interpret_style): Ditto.
329
David Turnerc0f9c4a2007-02-12 14:55:03 +00003302007-02-12 David Turner <david@freetype.org>
331
Werner Lemberg3cd6cc22007-02-16 08:10:17 +0000332 Simplify projection and dual-projection code interface.
333
Werner Lemberg406d25f2007-02-12 22:01:18 +0000334 * src/truetype/ttinterp.h (TT_Project_Func): Use `FT_Pos', not
335 FT_Vector' as argument type.
336 * src/truetype/ttinterp.c (CUR_Func_project, CUR_Func_dualproj):
337 Updated.
338 (CUR_fast_project, CUR_fast_dualproj): New macros.
339 (Project, Dual_Project, Project_x, Project_y): Updated.
340 (Ins_GC, Ins_SCFS, Ins_MDAP, Ins_MIAP, Ins_IP): Use new `fast'
341 macros.
342
343
344 * src/autofit/afloader.c (af_loader_load_g): Improve spacing
345 adjustments for the non-light auto-hinted modes. Gets rid of
346 `inter-letter spacing is too wide' problems.
David Turner72a0dd22007-02-12 15:24:51 +0000347
Werner Lemberg3cd6cc22007-02-16 08:10:17 +0000348 * src/autofit/aflatin.c (af_latin_hints_link_segments,
349 af_latin_hints_compute_edges): Slight optimization of the segment
350 linker and better handling of serif segments to get rid of broken
351 `9' in Arial at 9pt (96dpi).
Werner Lembergeb3d1fd2007-02-13 08:19:49 +0000352
David Turnerc0f9c4a2007-02-12 14:55:03 +0000353
Werner Lemberg442bfb82007-02-12 21:44:10 +0000354 Introduce new string functions and the corresponding macros to get
355 rid of various uses of strcpy and other `evil' functions, as well as
356 to simplify a few things.
357
358 * include/freetype/internal/ftmemory.h (ft_mem_strdup, ft_mem_dup,
359 ft_mem_strcpyn): New declarations.
360 (FT_MEM_STRDUP, FT_STRDUP, FT_MEM_DUP, FT_DUP, FT_STRCPYN): New
361 macros.
362 * src/base/ftutil.c (ft_mem_dup, ft_mem_strdup, ft_mem_strcpyn): New
363 functions.
364
365 * src/bfd/bfddrivr.c (bdf_interpret_style, BDF_Face_Init),
366 src/bdf/bdflib.c (_bdf_add_property), src/pcf/pcfread.c
367 (pcf_get_properties, pcf_interpret_style, pcf_load_font),
368 src/cff/cffdrivr.c (cff_get_glyph_name), src/cff/cffload.c
369 (cff_index_get_sid_string), src/cff/cffobjs.c (cff_strcpy),
370 src/sfnt/sfdriver.c (sfnt_get_glyph_name), src/type1/t1driver.c
371 (t1_get_glyph_name), src/type42/t42drivr.c (t42_get_glyph_name,
372 t42_get_name_index): Use new functions and simplify code.
David Turner2ef3e0f2007-02-12 21:28:21 +0000373
Werner Lemberg406d25f2007-02-12 22:01:18 +0000374 * builds/mac/ftmac.c (FT_FSPathMakeSpec): Don't use FT_MIN.
375
Werner Lemberg582067d2007-02-11 15:03:05 +00003762007-02-11 Werner Lemberg <wl@gnu.org>
377
378 * src/autofit/afloader.c (af_loader_load_g): Don't change width for
379 non-spacing glyphs.
380
Werner Lemberg8f474532007-02-07 08:31:01 +00003812007-02-07 Tom Parker <palfrey@tevp.net>
382
383 * src/cff/cffdrivr.c (cff_get_name_index): Protect against NULL
384 pointer.
385
Suzuki, Toshiya (鈴木俊哉)b8128d92007-02-05 02:31:34 +00003862007-02-05 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
387
Suzuki, Toshiya (鈴木俊哉)f223df62007-02-05 04:07:46 +0000388 * include/freetype/ftmac.h (FT_DEPRECATED_ATTRIBUTE):
389 Introduce __attribute((deprecated))__ to warn functions
Werner Lembergdcbb7082007-02-08 08:54:09 +0000390 which use non-ANSI data types in its interfaces.
Suzuki, Toshiya (鈴木俊哉)f223df62007-02-05 04:07:46 +0000391 (FT_GetFile_From_Mac_Name): Deprecated, using FSSpec.
392 (FT_GetFile_From_Mac_ATS_Name): Deprecated, using FSSpec.
393 (FT_New_Face_From_FSSpec): Deprecated, using FSSpec.
394 (FT_New_Face_From_FSRef): Deprecated, using FSRef.
Werner Lembergdcbb7082007-02-08 08:54:09 +0000395
396 * src/base/ftmac.c: Predefine FT_DEPRECATED_ATTRIBUTE as void
397 to avoid warning in building FreeType.
Suzuki, Toshiya (鈴木俊哉)f223df62007-02-05 04:07:46 +0000398 * builds/mac/ftmac.c: Ditto.
399
4002007-02-05 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
401
Suzuki, Toshiya (鈴木俊哉)beebb332007-02-05 03:44:27 +0000402 * src/base/ftbase.c: Fix to use builds/mac/ftmac.c, if configured
Werner Lembergdcbb7082007-02-08 08:54:09 +0000403 `--with-fsspec' etc. Replace #include "ftmac.c" with
Suzuki, Toshiya (鈴木俊哉)beebb332007-02-05 03:44:27 +0000404 #include <ftmac.c>.
405
4062007-02-05 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
407
Suzuki, Toshiya (鈴木俊哉)4827e9b2007-02-05 03:28:29 +0000408 * include/freetype/ftmac.h (FT_GetFilePath_From_Mac_ATS_Name):
409 Introduced as replacement of FT_GetFile_From_Mac_ATS_Name.
410 * src/base/ftmac.c (FT_GetFilePath_From_Mac_ATS_Name): Ditto.
411 (FT_GetFile_From_Mac_ATS_Name): Rewritten as wrapper of
412 FT_GetFilePath_From_Mac_ATS_Name.
413 * builds/mac/ftmac.c: Ditto.
414
4152007-02-05 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
416
Werner Lembergdcbb7082007-02-08 08:54:09 +0000417 * include/freetype/ftmac.h: Fixed wrong comment: FSSpec of
Suzuki, Toshiya (鈴木俊哉)da5ada52007-02-05 02:46:27 +0000418 FT_GetFile_From_Mac_Name, FT_GetFile_From_Mac_ATS_Name are
419 for passing to FT_New_Face_From_FSSpec.
420
4212007-02-05 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
422
Werner Lembergdcbb7082007-02-08 08:54:09 +0000423 * builds/unix/configure.raw: Check whether Mac OS X system headers
Suzuki, Toshiya (鈴木俊哉)b8128d92007-02-05 02:31:34 +0000424 can be built under ANSI C mode.
Werner Lembergdcbb7082007-02-08 08:54:09 +0000425
426 * src/base/ftmac.c (OS_INLINE): Redefine OS_INLINE by a version
427 compatible to ANSI C in case system headers are ANSI C incompatible.
Suzuki, Toshiya (鈴木俊哉)b8128d92007-02-05 02:31:34 +0000428 * builds/mac/ftmac.c (OS_INLINE): Ditto.
429
Werner Lemberg313d7772007-02-01 08:10:45 +00004302007-02-01 Werner Lemberg <wl@gnu.org>
431
432 * include/freetype/ttnameid.h (TT_MS_LANGID_DZONGHKA_BHUTAN):
433 Explain why applications shouldn't use it. Found by Alexei.
434
Suzuki, Toshiya (鈴木俊哉)b8128d92007-02-05 02:31:34 +00004352007-02-01 Alexei Podtelezhnikov <apodtele@gmail.com>
Werner Lemberg4b2e83d2007-02-01 07:58:02 +0000436
437 * builds/unix/freetype2.m4 (AC_CHECK_FT2): Fix spelling of warning
438 message.
439
440 * src/gxvalid/gxvmort1.c
441 (gxv_mort_subtable_type1_substTable_validate): Fix debugging
442 message.
443
Werner Lemberg53935932007-01-31 08:53:02 +00004442007-01-31 Werner Lemberg <wl@gnu.org>
445
446
447 * Version 2.3.1 released.
448 =========================
449
450
451 Tag sources with `VER-2-3-1-FINAL'.
452
453 * builds/win32/visualc/freetype.dsp,
454 builds/win32/visualc/freetype.vcproj: s/230/231/.
455 * builds/win32/visualc/index.html: s/221/231/.
456
457 * vms_make.com: Add `ftgasp'.
458
David Turnera7ee6082007-01-30 10:33:53 +00004592007-01-30 David Turner <david@freetype.org>
460
Werner Lemberg53935932007-01-31 08:53:02 +0000461 Tag sources with VER-2-3-1 to prepare release.
David Turner3eaef6c2007-01-30 10:40:23 +0000462
Werner Lemberg53935932007-01-31 08:53:02 +0000463 * include/freetype/freetype.h (FREETYPE_PATCH): Set to 1.
David Turner3eaef6c2007-01-30 10:40:23 +0000464
Werner Lemberg25d592a2007-03-09 07:59:35 +0000465 * docs/VERSION.DLL, docs/release, README, Jamfile (RefDoc):
Werner Lemberg53935932007-01-31 08:53:02 +0000466 s/2.3.0/2.3.1/.
467
468 * builds/unix/configure.raw (version_info): Set to 9:12:3.
469
470
471 * src/autofit/aftypes.h (AF_USE_WARPER), src/autofit/afloader.c
472 (af_loader_load_g): Disable the warper (i.e., the light hinting
473 improvements) to make a 2.3.1 bugfix release before introducing a
474 new feature. This should give us more time to tune and improve the
475 warper for the next release.
476
477 * docs/CHANGES: Update accordingly.
David Turnera7ee6082007-01-30 10:33:53 +0000478
David Turnerd91eebd2007-01-26 15:05:41 +00004792007-01-25 David Turner <david@freetype.org>
480
Werner Lembergbf241762007-01-26 16:08:49 +0000481 For light auto-hinting, improve glyph advance widths and resurrect
482 normal/full hinting to its normal quality.
483
484 * src/autofit/afhints.h (AF_GlyphHintsRec): New members `xmin_delta'
485 and `xmax_delta'.
486 * src/autofit/afhints.c (af_glyph_hints_reload): Reset `xmin_delta'
487 and `xmax_delta'.
488
489 * src/autofit/afloader.c (af_loader_load_g) <AF_USE_WARPER>: Replace
490 preprocessor conditional with if-clause, handling both light and
491 normal mode.
492
493 * src/autofit/afwarp.c (AF_WarpScore): Fine-tune again.
494 (af_warper_compute): Handle `xmin_delta' and `xmax_delta'.
David Turnerd91eebd2007-01-26 15:05:41 +0000495
Werner Lemberg3b3f2ba2007-01-25 22:14:40 +00004962007-01-25 Werner Lemberg <wl@gnu.org>
497
498 * docs/release: Updated -- Savannah uses a new uploading scheme.
499
David Turnera42567b2007-01-25 12:23:37 +00005002007-01-25 David Turner <david@freetype.org>
501
Werner Lembergd7855662007-01-25 13:53:56 +0000502 * src/cff/cffload.c (cff_index_get_pointers): Improve previous fix.
David Turnera42567b2007-01-25 12:23:37 +0000503
Werner Lembergd7855662007-01-25 13:53:56 +0000504 * src/cff/cffgload.c (cff_decoder_parse_charstrings)
505 <cff_op_callsubr, cff_op_callgsubr>: Fix sanity check for empty
506 functions.
David Turnera42567b2007-01-25 12:23:37 +0000507
Werner Lembergd7855662007-01-25 13:53:56 +0000508 * docs/CHANGES: Document light auto-hinting improvement.
David Turnera42567b2007-01-25 12:23:37 +0000509
Werner Lembergb1be9e82007-01-25 11:50:00 +00005102007-01-25 Werner Lemberg <wl@gnu.org>
511
512 * src/cff/cffload.c (cff_index_get_pointers): Handle last entry
Werner Lembergd7855662007-01-25 13:53:56 +0000513 correctly in a sanity check. Since this function is only used to
514 load local and global functions, any charstring that called the last
515 local/global function would fail otherwise. This fixes Savannah bug
516 #18867.
Werner Lembergb1be9e82007-01-25 11:50:00 +0000517
518 * docs/CHANGES: Document it.
519
David Turnerb6de8d12007-01-23 15:51:50 +00005202007-01-23 David Turner <david@freetype.org>
521
Werner Lembergb1be9e82007-01-25 11:50:00 +0000522 * src/truetype/ttobjs.c (tt_size_ready_bytecode): Fix typo that
523 prevented compilation when disabling both the unpatented and the
524 bytecode interpreter in the TrueType font driver.
David Turner741a17e2007-01-23 16:14:38 +0000525
Werner Lembergb1be9e82007-01-25 11:50:00 +0000526
527 Fix and enable the warper to improve `light' hinting mode. This is
528 not necessarily a final version, but it seems to work well.
529
530 * src/autofit/aflatin.c (af_latin_hints_init) [AF_USE_WARPER]:
531 Disable code.
532 (af_latin_hints_apply) [AF_USE_WARPER]: Handle FT_RENDER_MODE_LIGHT.
533 * src/autofit/aftypes.h: Activate AF_USE_WARPER.
534
535 * src/autofit/afwarp.c (AF_WarpScore): Tune table.
536 (af_warper_compute_line_best): Fix array size of `scores'.
537 (af_warper_compute): Better handling of border cases.
538 * src/autofit/afwarp.h (AF_WarperRec): Remove unused members `X1'
539 and `X2'.
David Turnerb6de8d12007-01-23 15:51:50 +0000540
Werner Lemberg011d1112007-01-21 09:36:00 +00005412007-01-21 Werner Lemberg <wl@gnu.org>
542
Werner Lemberg42b63b22007-01-21 21:01:33 +0000543 * ChangeLog: Split off older entries into...
544 * ChangeLog.22: This new file.
545
5462007-01-21 Werner Lemberg <wl@gnu.org>
547
Werner Lemberg555258f2007-01-21 09:46:37 +0000548 * docs/CHANGES: Document SHZ fix.
549
5502007-01-21 George Williams <gww@silcom.com>
551
552 * src/truetype/ttinterp.c (Ins_SHZ): SHZ doesn't move phantom
553 points.
554
5552007-01-21 Werner Lemberg <wl@gnu.org>
556
Werner Lemberg011d1112007-01-21 09:36:00 +0000557 * src/sfnt/ttmtx.c (tt_face_get_metrics)
558 [!FT_CONFIG_OPTION_OLD_INTERNALS]: Fix limit check.
559
Werner Lemberg87a5a432007-01-17 12:44:39 +00005602007-01-17 Werner Lemberg <wl@gnu.org>
561
Werner Lembergb8003292007-01-17 12:56:25 +0000562
563 * Version 2.3.0 released.
564 =========================
565
566
567 Tag sources with `VER-2-3-0-FINAL'.
568
5692007-01-17 Werner Lemberg <wl@gnu.org>
570
Werner Lemberg87a5a432007-01-17 12:44:39 +0000571 * docs/release: Updated.
572
David Turner22122722007-01-16 20:06:44 +00005732007-01-16 David Turner <david@freetype.org>
574
Werner Lemberg87a5a432007-01-17 12:44:39 +0000575 * src/autofit/aflatin.c (af_latin_hints_compute_segments),
576 src/cff/cffdriver.c (cff_ps_get_font_info), src/truetype/ttobjs.c
577 (tt_face_init), src/truetype/ttinterp.c (Ins_SHC): Fix compiler
578 warnings.
David Turner22122722007-01-16 20:06:44 +0000579
Werner Lemberg267e1d72007-01-15 07:48:09 +00005802007-01-15 Detlef Würkner <TetiSoft@apg.lahn.de>
581
582 * builds/amiga/makefile, builds/amiga/makefile.os4,
583 builds/amiga/smakefile: Add `ftgasp.c' and `ftlcdfil.c'.
584
585 * builds/amiga/include/freetype/config/ftconfig.h: Synchronize.
586
Werner Lemberg8c4120d2007-01-15 06:42:40 +00005872007-01-14 Detlef Würkner <TetiSoft@apg.lahn.de>
588
589 Fix various compiler warnings.
590
591 * src/truetype/ttdriver.c (tt_size_select), src/cff/cffobjs.h,
592 src/cff/cffobjs.c (cff_size_request), src/type42/t42objs.h:
593 s/index/strike_index/.
594 * src/base/ftobjs.c (FT_Match_Size): s/index/size_index/.
595
596 * src/gxvalid/gxvmorx5.c
597 (gxv_morx_subtable_type5_InsertList_validate): s/index/table_index/.
598
599 * src/truetype/ttinterp.c (Compute_Point_Displacement),
600 src/pcf/pcfread.c (pcf_seek_to_table_type): Avoid possibly
601 uninitialized variables.
602
Werner Lemberg6164a9d2007-01-13 23:01:36 +00006032007-01-13 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
604
605 * docs/CHANGES, docs/INSTALL.MAC: Improvements.
606
Werner Lemberg281c1482007-01-13 22:50:51 +00006072007-01-13 Werner Lemberg <wl@gnu.org>
608
609 * src/type1/t1afm.c (T1_Read_Metrics): MS Windows allows PFM
610 versions up to 0x3FF without complaining.
611
Werner Lembergac250b22007-01-13 14:01:36 +00006122007-01-13 Derek Clegg <dclegg@apple.com>
613
614 Add FT_Get_PS_Font_Info interface to CFF driver.
615
616 * src/cff/cfftypes.h: Include FT_TYPE1_TABLES_H.
617 (CFF_FontRec): Add `font_info' field.
618
619 * src/cff/cffload.c: Include FT_TYPE1_TABLES_H.
620 (cff_font_done): Free font->font_info if necessary.
621
622 * src/cff/cffdrvr.c (cff_ps_get_font_info): New function.
623 (cff_service_ps_info): Register cff_ps_get_font_info.
624
Werner Lemberg23df31a2007-01-13 08:45:00 +00006252007-01-13 Werner Lemberg <wl@gnu.org>
626
627 * src/base/ftoutln.c (FT_Outline_Get_Orientation): Fix compilation
628 with C++ compiler.
629
630 * src/autofit/afhints.c (af_glyph_hints_dump_segments,
631 af_glyph_hints_dump_edges): Ditto.
632
633 * src/base/rules.mk (BASE_SRC): Remove ftgasp.c (it's already in
634 `modules.cfg').
635
636 * src/sfnt/ttsbit0.h: Remove.
637
638 * src/sfnt/rules.mk (SFNT_DRV_SRC): Don't include ttsbit0.c.
639
Werner Lemberg27cf9de2007-01-13 07:34:23 +00006402007-01-12 David Turner <david@freetype.org>
641
642 * src/base/ftbitmap.c (ft_bitmap_assure_buffer): Fix memory stomping
643 bug in the bitmap emboldener if the pitch of the source bitmap is
644 much larger than its width.
645
646 * src/truetype/ttinterp.c (Update_Max): Fix aliasing-related
647 compilation warning.
648
Werner Lemberg6d96d312007-01-12 10:30:19 +00006492007-01-12 Werner Lemberg <wl@gnu.org>
650
651 * builds/unix/install-sh, builds/unix/mkinstalldirs: Updated from
652 `automake' CVS module from sources.redhat.com.
653
Werner Lemberg17432b52007-01-12 09:28:44 +00006542007-01-11 Werner Lemberg <wl@gnu.org>
655
656 * src/type1/t1load.c (is_space): Removed.
657 (parse_encoding, parse_charstrings): Use IS_PS_DELIM.
658 (parse_charstrings): Use IS_PS_TOKEN.
659
660
661 * autogen.sh: Avoid bash specific syntax.
662
David Turner038ace22007-01-11 15:00:59 +00006632007-01-11 David Turner <david@freetype.org>
664
Werner Lemberg17432b52007-01-12 09:28:44 +0000665 * docs/CHANGES: Small update.
David Turner490503a2007-01-11 15:29:41 +0000666
Werner Lemberg17432b52007-01-12 09:28:44 +0000667 * builds/unix/configure.raw (version_info): Set to 9:11:3.
David Turner2c7a7fb2007-01-11 15:14:16 +0000668
Werner Lemberg17432b52007-01-12 09:28:44 +0000669 * src/base/ftobjs.c (IsMacResource): Fix a small bug that caused a
670 crash with some Mac OS X .dfont files. Submitted by Masatake
Yamato, Masatake (大和正武)9f9bc2b2007-01-13 06:38:56 +0000671 Yamato.
David Turner7a3c5642007-01-11 15:09:01 +0000672
Werner Lemberg17432b52007-01-12 09:28:44 +0000673 * autogen.sh: Small fix to get it working on Mac OS X properly:
674 The issue is that GNU libtool is called `glibtool' on this platform,
675 and we must call `glibtoolize', since `libtoolize' doesn't exist.
David Turner038ace22007-01-11 15:00:59 +0000676
David Turner2628ea92007-01-10 13:15:56 +00006772007-01-10 David Turner <david@freetype.org>
678
Werner Lemberg17432b52007-01-12 09:28:44 +0000679 * all-sources: Tag all sources with VER-2-3-0-RC1 and
680 VER-2-3-0.
David Turner72011082007-01-10 14:33:18 +0000681
Werner Lemberg17432b52007-01-12 09:28:44 +0000682 * Jamfile (RefDoc), README, builds/win32/visualc/freetype.dsp,
683 builds/win32/visualc/freetype.vcproj, docs/VERSION.DLL: Update
684 version number to 2.3.0.
685
686 * include/freetype/freetype.h (FREETYPE_MINOR): Set to 3.
687 (FREETYPE_PATCH): Set to 0.
David Turnerd5ca7472007-01-10 14:18:15 +0000688
689 * include/freetype/ftchapters.h, include/freetype/ftgasp.h,
Werner Lemberg17432b52007-01-12 09:28:44 +0000690 include/freetype/ftlcdfil.h: Update reference documentation with
691 GASP support and LCD filtering sections.
David Turnerd5ca7472007-01-10 14:18:15 +0000692
Werner Lemberg17432b52007-01-12 09:28:44 +0000693 * src/pshinter/pshalgo.c (psh_glyph_compute_inflections): Fix a typo
694 which created an endless loop with some malformed font files.
David Turner2628ea92007-01-10 13:15:56 +0000695
Werner Lembergbf02d392007-01-10 07:07:37 +00006962007-01-10 Derek Clegg <dclegg@apple.com>
697
698 * src/type1/t1load.c (T1_Get_MM_Var): Always return fixed point
699 values.
700
David Turnerf48b60e2007-01-08 15:15:32 +00007012007-01-08 David Turner <david@freetype.org>
702
Werner Lembergcc7f12a2007-01-09 10:37:36 +0000703 * docs/CHANGES: Updated.
David Turner4f7496e2007-01-09 09:21:16 +0000704
Werner Lembergcc7f12a2007-01-09 10:37:36 +0000705 * include/freetype/ftgasp.h, src/base/ftgasp.c: New files which add
706 a new API `FT_Get_Gasp' to return entries of the `gasp' table
David Turnerf48b60e2007-01-08 15:15:32 +0000707 corresponding to a given character pixel size.
708
Werner Lembergcc7f12a2007-01-09 10:37:36 +0000709 * src/sfnt/ttload.c (tt_face_load_gasp): Add version check for the
710 `gasp' table, in order to avoid potential problems with later
711 versions.
David Turnerf48b60e2007-01-08 15:15:32 +0000712
Werner Lembergcc7f12a2007-01-09 10:37:36 +0000713 * include/freetype/config/ftheader.h (FT_GASP_H): New macro for
714 <freetype/ftgasp.h>.
David Turnerf48b60e2007-01-08 15:15:32 +0000715
Werner Lembergcc7f12a2007-01-09 10:37:36 +0000716 * src/base/rules.mk (BASE_SRC), src/base/Jamfile (_sources),
717 modules.cfg (BASE_EXTENSIONS), builds/win32/visualc/freetype.dsp,
718 builds/win32/visualc/freetype.vcproj: Add src/base/ftgasp.c to the
719 default build.
David Turnerf48b60e2007-01-08 15:15:32 +0000720
Werner Lemberge6b6f372007-01-07 00:06:47 +00007212007-01-07 Werner Lemberg <wl@gnu.org>
722
Werner Lembergb8004d22007-01-07 09:13:38 +0000723 * src/cid/cidparse.c (cid_parser_new): Improve error message for
724 Type 11 fonts.
725 Scan for `/sfnts' token.
726
7272007-01-07 Werner Lemberg <wl@gnu.org>
728
729 * src/cid/cidparse.c (cid_parser_new): Reject Type 11 fonts.
Werner Lemberge6b6f372007-01-07 00:06:47 +0000730
Werner Lembergbe5f7972007-01-06 07:51:48 +00007312007-01-06 Werner Lemberg <wl@gnu.org>
732
733 * src/cff/cffload.c (cff_index_init): Remove unused variable.
734 (cff_index_read_offset): s/perror/errorp/ to avoid global shadowing.
735
David Turnera8cf42b2007-01-04 16:46:46 +00007362007-01-04 David Turner <david@freetype.org>
737
Werner Lembergf6294392007-01-06 07:47:45 +0000738 * src/pfr/pfrobjs.c (pfr_face_init): Detect non-scalable fonts
739 correctly. This fixes Savannah bug #17876.
David Turner34fcd0b2007-01-05 15:55:59 +0000740
Werner Lembergf6294392007-01-06 07:47:45 +0000741
742 Do not allocate interpreter-specific tables in memory if we are not
743 going to load glyphs with the bytecode interpreter anyway.
744
745 * src/truetype/ttgload.c (tt_loader_init): Load execution context
746 only if glyph is hinted.
747 Updated.
748 * src/truetype/ttobjs.h (TT_SizeRec): Add members `bytecode_ready'
749 and `cvs_ready'.
750 Add `tt_size_ready_bytecode' declaration.
751 * src/truetype/ttobjs.c (tt_size_done_bytecode,
752 tt_size_init_bytecode, tt_size_ready_bytecode): New functions.
753 (tt_size_init): Move most code into `tt_size_init_bytecode'.
754 (tt_size_done): Move most code into `tt_size_done_bytecode'.
755 (tt_size_reset): Move some code to `tt_size_ready_bytecode'.
Werner Lemberg9b774e22007-01-16 06:11:27 +0000756
David Turner91a34022007-01-05 14:47:08 +0000757
Werner Lembergf6294392007-01-06 07:47:45 +0000758 Don't extract the metrics table from the SFNT font file. Instead,
759 reparse it on each glyph load. The runtime difference is not
760 noticeable, and it can save a lot of heap memory when memory-mapped
761 files are not used.
David Turnera3a3c5d2007-01-05 13:15:29 +0000762
Werner Lembergf6294392007-01-06 07:47:45 +0000763 * include/freetype/internal/tttypes.h (TT_FaceRec): Add members
764 `horz_metrics_offset' and `vert_metrics_ofset'.
765 * src/sfnt/ttmtx.c (tt_face_load_hmtx, tt_face_get_metrics):
766 Updated.
767
768
769 * src/sfnt/ttcmap.c (tt_cmap4_validate): Slight optimization.
770
771
772 Do not load the CFF index offsets into memory, since this wastes a
773 *lot* of heap memory with large Asian CFF fonts. There is no
774 significant performance loss.
775
776 * src/cff/cffload.h: Add `cff_charset_cid_to_gindex' declaration.
777 * src/cff/cfftypes.h (CFF_IndexRec): Add fields `start' and
778 `data_size'.
779 (CFF_CharsetRec): Add field `num_glyphs'.
780
781 * src/cff/cffload.c (cff_index_read_offset, cff_index_load_offsets,
782 cff_charset_cid_to_gindex): New functions.
783 (cff_new_index): Renamed to...
784 (cff_index_init): This. Update all callers.
785 Updated -- some code has been moved to `cff_index_load_offsets'.
786 (cff_done_index): Renamed to...
787 (cff_index_done): This. Update all callers.
788 (cff_index_get_pointers, cff_index_access_element): Updated to use
789 stream offsets.
790 (cff_charset_compute_cids): Set `num_glyphs' field.
791 (cff_encoding_load): Updated.
792
793 * src/cff/cffgload.c (cff_slot_load): Updated.
David Turner3a2131a2007-01-05 10:51:56 +0000794
7952007-01-04 David Turner <david@freetype.org>
796
Werner Lemberg4ea0a7f2007-01-05 09:03:31 +0000797 * docs/INSTALL.UNIX: Simplify some parts, add reference to
798 autogen.sh and pointer to README.CVS.
David Turnerf1c7e382007-01-04 23:16:37 +0000799
Werner Lemberg4ea0a7f2007-01-05 09:03:31 +0000800 * README.CVS: Add common problem description and solution
801 when running autogen.sh.
David Turnerf1c7e382007-01-04 23:16:37 +0000802
Werner Lemberg4ea0a7f2007-01-05 09:03:31 +0000803 * docs/INSTALL: Add reference to MacOS X.
David Turnerf1c7e382007-01-04 23:16:37 +0000804
Werner Lemberg4ea0a7f2007-01-05 09:03:31 +0000805 * docs/MAKEPP, docs/INSTALL.MAC: New documentation files.
David Turnerf1c7e382007-01-04 23:16:37 +0000806
Werner Lemberg4ea0a7f2007-01-05 09:03:31 +0000807 * docs/TODO: Remove obsolete items.
David Turnerf1c7e382007-01-04 23:16:37 +0000808
Werner Lemberg4ea0a7f2007-01-05 09:03:31 +0000809 * src/raster/ftraster.c: (TRaster_Instance): Replace it with...
810 (TWorker): This.
811 Remove `count_table' and `memory'.
812 Make `grays' a pointer.
813 (TRaster): New structure.
814 (count_table): New static array.
815 (RAS_ARGS, RAS_ARG, RAS_VARS, RAS_VAR, FT_UNUSED_RASTER, cur_ras,
816 Vertical_Gray_Sweep_Step, ft_black_new, ft_black_done,
817 ft_black_set_mode, ft_black_render): Updated.
818 (ft_black_init): Don't initialize `count_table'.
819 (ft_black_reset): Use the render pool. This saves about 6KB of
820 heap space for each FT_Library instance.
David Turner38d10022007-01-04 18:50:12 +0000821
Werner Lemberg4ea0a7f2007-01-05 09:03:31 +0000822 * src/smooth/ftgrays.c (TRaster): Replaced with...
823 (TWorker): This.
824 Remove `memory'.
825 (TRaster): New structure.
826
827 (RAS_ARG_, RAS_ARG, RAS_VAR_, RAS_VAR, ras, gray_render_line,
828 gray_move_to, gray_line_to, gray_conic_to, gray_cubic_to,
829 gray_render_span, gray_raster_render): Updated.
830 (gray_raster_reset): Use the render pool. This saves about 6KB of
831 heap space for each FT_Library instance.
David Turner91bd5dd2007-01-04 18:00:14 +0000832
David Turner8a6c44e2007-01-04 17:03:11 +0000833 * src/sfnt/sfobjs.c, src/sfnt/ttkern.c, src/sfnt/ttkern.h,
834 src/sfnt/ttmtx.c, src/sfnt/ttsbit.c, src/sfnt/ttsbit.h,
Werner Lemberg4ea0a7f2007-01-05 09:03:31 +0000835 src/truetype/ttpload.c, include/freetype/config/ftoption.h: Remove
836 FT_OPTIMIZE_MEMORY macro (and code for !FT_OPTIMIZE_MEMORY) since
837 the optimization is no longer experimental.
David Turner8a6c44e2007-01-04 17:03:11 +0000838
Werner Lemberg4ea0a7f2007-01-05 09:03:31 +0000839 * src/pshinter/pshalgo.c (psh_glyph_interpolate_normal_points):
840 Remove a typo that results in no hinting and a memory leak with some
841 large Asian CFF fonts.
David Turnera8cf42b2007-01-04 16:46:46 +0000842
Werner Lemberg4ea0a7f2007-01-05 09:03:31 +0000843 * src/base/ftobjs.c (FT_Done_Library): Remove a subtle memory leak
David Turner9d7d50f2007-01-05 13:17:15 +0000844 which happens when FT_Done_Library is called with still opened
Werner Lemberg4ea0a7f2007-01-05 09:03:31 +0000845 CFF_Faces in it. We need to close all faces before destroying the
846 modules, or else some bad things (memory leaks) may happen.
David Turnera8cf42b2007-01-04 16:46:46 +0000847
Werner Lemberg6b87e6f2007-01-02 19:20:08 +00008482007-01-02 Werner Lemberg <wl@gnu.org>
849
850 * src/gxvalid/gxvkern.c (gxv_kern_subtable_fmt0_pairs_validate):
851 Remove compiler warning.
852
David Turner9207e002007-01-02 16:58:13 +00008532007-01-02 David Turner <david@freetype.org>
854
Werner Lemberg6b87e6f2007-01-02 19:20:08 +0000855 * src/sfnt/sfobjs.c: Add documentation comment.
David Turner9207e002007-01-02 16:58:13 +0000856
Yamato, Masatake (大和正武)d5d3e412006-12-30 20:17:30 +00008572006-12-31 Masatake YAMATO <jet@gyve.org>
858
Werner Lemberg6b87e6f2007-01-02 19:20:08 +0000859 * src/gxvalid/gxvkern.c (gxv_kern_subtable_fmt0_pairs_validate): New
860 function.
861 Check uniqueness of the gid pairs.
Werner Lemberg9b774e22007-01-16 06:11:27 +0000862 (gxv_kern_subtable_fmt0_validate): Move some code to
Yamato, Masatake (大和正武)d5d3e412006-12-30 20:17:30 +0000863 `gxv_kern_subtable_fmt0_pairs_validate'.
864
David Turner115b4422006-12-22 11:37:05 +00008652006-12-22 David Turner <david@freetype.org>
866
Werner Lemberg6b87e6f2007-01-02 19:20:08 +0000867 * src/autofit/aflatin.c, src/truetype/ttgload.c: Remove compiler
868 warnings.
David Turner115b4422006-12-22 11:37:05 +0000869
Werner Lemberg6b87e6f2007-01-02 19:20:08 +0000870 * builds/win32/visualc/freetype.vcproj: Add _CRT_SECURE_NO_DEPRECATE
871 to avoid deprecation warnings with Visual C++ 8.
David Turner115b4422006-12-22 11:37:05 +0000872
Werner Lemberg4755bf72006-12-16 08:58:44 +00008732006-12-16 Anders Kaseorg <anders@kaseorg.com>
874
875 * src/base/ftlcdfil.c (FT_Library_SetLcdFilter)
876 [FT_FORCE_LIGHT_LCD_FILTER]: Fix typo.
877
Suzuki, Toshiya (鈴木俊哉)7a7d4032006-12-15 14:47:42 +00008782006-12-15 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
879
Werner Lemberg9b774e22007-01-16 06:11:27 +0000880 * include/freetype/internal/services/svotval.h: Add `volatile' to
Werner Lemberg0fd08bd2006-12-16 02:57:46 +0000881 sync with the modification by Jens Claudius on 2006-08-22; cf.
882 http://cvs.savannah.gnu.org/viewcvs/freetype/freetype2/src/otvalid/otvmod.c?r1=1.4&r2=1.5
Suzuki, Toshiya (鈴木俊哉)1d5b6a62006-12-15 15:44:56 +0000883
8842006-12-15 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
885
886 * src/base/ftmac.c: Specialized for Mac OS X only.
887 * builds/unix/ftconfig.in: Fixed for ppc64 missing Carbon framework.
888 * builds/unix/configure.raw: Ditto. When explicit switches for
889 FSSpec/FSRef/QuickDraw/ATS availability are given to configure,
890 builds/mac/ftmac.c is used instead of default src/base/ftmac.c.
891
8922006-12-15 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
893
894 * builds/mac/ftmac.c: Copied src/base/ftmac.c for legacy system.
895 * builds/mac/FreeType.m68k_cfm.make.txt: Fix to use builds/mac/ftmac.c
896 instead of src/base/ftmac.c
897 * builds/mac/FreeType.ppc_carbon.make.txt: Ditto.
898 * builds/mac/FreeType.ppc_classic.make.txt: Ditto.
899 * builds/mac/FreeType.m68k_far.make.txt: Ditto, and exclude gxvalid.c
900 that cannot be built at present.
901
9022006-12-15 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
903
Werner Lemberg0fd08bd2006-12-16 02:57:46 +0000904 * src/base/ftobjs.c: Improvement of resource fork handler for
905 POSIX, cf.
906 http://lists.gnu.org/archive/html/freetype-devel/2006-10/msg00025.html
Suzuki, Toshiya (鈴木俊哉)7a7d4032006-12-15 14:47:42 +0000907 (Mac_Read_sfnt_Resource): Count only `sfnt' resource of suitcase font
908 format or .dfont, to simulate the face index number counted by ftmac.c.
909 (IsMacResource): Return the number of scalable faces correctly.
910
Werner Lembergec5b4502006-12-10 07:51:38 +00009112006-12-10 Werner Lemberg <wl@gnu.org>
912
913 * builds/toplevel.mk (version): Protect against `distclean' target.
914
Werner Lembergb26b3142006-12-09 20:01:43 +00009152006-12-09 Werner Lemberg <wl@gnu.org>
916
917 * builds/*/*def.mk, builds/*/detect.mk (CAT): Define to either `cat'
918 or `type'.
919
920 * builds/freetype.mk (version): Extracted from freetype.h, using
921 GNU make's built-in string functions.
922 (refdoc): Use $(version) instead of static version number.
923
Werner Lemberg4e1d6c02006-12-09 08:20:37 +00009242006-12-08 Werner Lemberg <wl@gnu.org>
925
926 * builds/toplevel.mk (dist): Extract version number from freetype.h.
927
Werner Lemberg15c29502006-12-09 07:29:54 +00009282006-12-08 Vladimir Volovich <vvv@vsu.ru>
929
930 * src/tools/apinames (State): Remove final comma in structure -- xlc
931 v5 under AIX 4.3 doesn't like this.
932
David Turnerdbf3b432006-12-07 21:18:09 +00009332006-12-07 David Turner <david@freetype.org>
934
Werner Lemberg256a3512006-12-08 06:49:33 +0000935 * src/autofit/afloader.c (af_loader_load_g): Small adjustment
936 to the spacing of auto-fitted glyphs. This only impacts rare
937 cases (e.g., Arial Bold at rather small character sizes).
David Turnerdbf3b432006-12-07 21:18:09 +0000938
Werner Lemberg11171312006-12-03 09:43:40 +00009392006-12-03 Werner Lemberg <wl@gnu.org>
940
941 * src/sfnt/rules.mk (SFNT_DRV_SRC): Add ttsbit0.c.
942
Werner Lemberg960ba592006-12-01 08:20:47 +00009432006-12-01 Werner Lemberg <wl@gnu.org>
David Turner80658e52006-11-28 08:09:20 +0000944
Werner Lemberg960ba592006-12-01 08:20:47 +0000945 * src/sfnt/sfobjs.c (tt_face_get_name): All Unicode strings are
946 encoded in UTF-16BE. Patch from Rajeev Pahuja <rpahuja@esri.com>.
947 (tt_name_entry_ascii_from_ucs4): Removed.
David Turner3a18c5e2006-11-28 08:38:31 +0000948
David Turner80658e52006-11-28 08:09:20 +0000949
Werner Lemberg960ba592006-12-01 08:20:47 +0000950 * include/freetype/ftxf86.h: Fix and extend comment so that it
951 appears in the documentation.
David Turner80658e52006-11-28 08:09:20 +0000952
Werner Lemberg960ba592006-12-01 08:20:47 +0000953 * include/freetype/ftchapters.h: Add `font_format' section.
954
955
956 * src/tools/docmaker/tohtml.py (HtmlFormatter::index_exit): Add link
957 to TOC in index page.
958
9592006-11-28 David Turner <david@freetype.org>
960
961 * src/smooth/ftgrays.c (gray_raster_render): Return 0 when we are
962 trying to render into a zero-width/height bitmap, not an error code.
963
964 * src/truetype/ttobjs.c (tt_face_init): Fix typo in previous patch.
965
966 * src/smooth/ftgrays.c: Remove hard-coded error values; use FreeType
967 ones instead.
968
969 * src/autofit/afhints.c (af_glyph_hints_dump_segments): Remove unused
970 variable.
David Turner80658e52006-11-28 08:09:20 +0000971
Werner Lemberg8636c292006-11-26 22:28:13 +00009722006-11-26 Pierre Hanser <hanser@club-internet.fr>
973
974 * src/truetype/ttobjs.c (tt_face_init): Protect against NULL pointer.
975
Werner Lemberg960ba592006-12-01 08:20:47 +00009762006-11-25 David Turner <david@freetype.org>
David Turner1bd6c472006-11-25 01:30:40 +0000977
Werner Lemberg960ba592006-12-01 08:20:47 +0000978 * src/autofit/afhints.c (af_glyph_hints_dump_points,
979 af_glyph_hints_dump_segments, af_glyph_hints_dumpedges) [!AF_DEBUG]:
980 Add stubs to link the `ftgrid' test program when debugging is
981 disabled in the auto-hinter.
David Turner1bd6c472006-11-25 01:30:40 +0000982
Werner Lemberg960ba592006-12-01 08:20:47 +00009832006-11-23 David Turner <david@freetype.org>
David Turner81e725f2006-11-23 14:49:48 +0000984
985 * src/autofit/afhints.c, src/autofit/afhints.h, src/autofit/aflatin.c,
Werner Lemberg960ba592006-12-01 08:20:47 +0000986 src/autofit/aftypes.h: Miscellaneous auto-hinter improvements.
987
988 * src/autofit/afhints.c (af_glyph_hints_dump_segments) [AF_DEBUG]:
989 Emit more sensible information.
990
991 * src/autofit/afhints.h (AF_SegmentRec): Add `height' member.
992
993 * src/autofit/aflatin.c (af_latin_metrics_scale_dim): Improve
994 rounding of blue values.
995 (af_latin_hints_compute_segments): Hint segment heights.
996 (af_latin_hints_link_segments): Reduce `len_score' value.
997 (af_latin_hints_compute_edges): Increase `segment_length_threshold'
998 value and use `height' member for comparisons.
999 (af_latin_hint_edges): Extend logging message.
1000 Improve handling of remaining edges.
David Turner81e725f2006-11-23 14:49:48 +00001001
Werner Lemberg91959bf2006-11-22 10:36:55 +000010022006-11-22 Werner Lemberg <wl@gnu.org>
1003
1004 Fix Savannah bug #15553.
1005
1006 * src/truetype/ttgload.c (tt_loader_init): Re-execute the CVT
1007 program after a change from mono to grayscaling (and vice versa).
1008 Use correct constant for comparison to get `exec->grayscale'.
1009
Werner Lemberg913a3652006-11-19 09:19:17 +000010102006-11-18 Werner Lemberg <wl@gnu.org>
1011
1012 Because FT_Load_Glyph expects CID values for CID-keyed fonts, the
David Turner81e725f2006-11-23 14:49:48 +00001013 test for a valid glyph index must be deferred to the font drivers.
Werner Lemberg913a3652006-11-19 09:19:17 +00001014 This patch fixes Savannah bug #18301.
1015
1016 * src/base/ftobjs.c (FT_Load_Glyph): Don't check `glyph_index'.
1017 * src/bdf/bdfdrivr.c (BDF_Glyph_Load), src/cff/cffgload.c
1018 (cff_slot_load), src/cid/cidgload.c (cid_slot_load_glyph),
1019 src/pcf/pcfdrivr.c (PCF_Glyph_Load), src/pfr/pfrobjs.c
1020 (pfr_slot_load), src/truetype/ttdriver.c (Load_Glyph),
1021 src/type1/t1gload.c (T1_Load_Glyph), src/winfonts/winfnt.c
1022 (FNT_Load_Glyph): Check validity of `glyph_index'.
1023
David Turner7bab6ae2006-11-13 11:25:06 +000010242006-11-13 David Turner <david@freetype.org>
1025
Werner Lemberg0d0d78d2006-11-14 10:37:10 +00001026 * src/truetype/ttinterp.c (FIX_BYTECODE): Undefine. The interpreter
1027 `enhancements' are still too buggy for general use.
David Turner7bab6ae2006-11-13 11:25:06 +00001028
Werner Lemberg0d0d78d2006-11-14 10:37:10 +00001029 * src/base/ftlcdfil.c: Add support for FT_FORCE_LIGHT_LCD_FILTER and
1030 FT_FORCE_LEGACY_LCD_FILTER at compile time. Define these macros
1031 when building the library to change the default LCD filter to be
1032 used. This is only useful for experimentation.
David Turner29c191c2006-11-13 13:03:48 +00001033
Werner Lemberg0d0d78d2006-11-14 10:37:10 +00001034 * include/freetype/ftlcdfil.h: Update documentation.
David Turnera95e5c62006-11-13 13:24:30 +00001035
David Turner8765c712006-11-10 16:49:42 +000010362006-11-10 David Turner <david@freetype.org>
1037
Werner Lemberg0d0d78d2006-11-14 10:37:10 +00001038 * src/smooth/ftsmooth.c: API change for the LCD
1039 filter. The FT_LcdFilter value is an enumeration describing which
1040 filter to apply, with new values FT_LCD_FILTER_LIGHT and
1041 FT_LCD_FILTER_LEGACY (the latter implements the LibXft original
1042 algorithm which produces strong color fringes for everything
1043 except very-well hinted text).
David Turner8765c712006-11-10 16:49:42 +00001044
Werner Lemberg0d0d78d2006-11-14 10:37:10 +00001045 * include/freetype/ftlcdfil.h (FT_Library_SetLcdFilter): Change
1046 second parameter to an enum type.
1047
1048 * src/base/ftlcdfil.c (USE_LEGACY): Define.
1049 (_ft_lcd_filter): Rename to...
1050 (_ft_lcd_filter_fir): This.
1051 Update parameters.
1052 (_ft_lcd_filter_legacy) [USE_LEGACY]: New filter function.
1053 (FT_Library_Set_LcdFilter): Update parameters.
1054 Handle new filter modes.
1055
1056 * include/internal/ftobjs.h: Include FT_LCD_FILTER_H.
1057 (FT_Bitmap_LcdFilterFunc): Change third argument to `FT_Library'.
1058 (FT_LibraryRec) [FT_CONFIG_OPTION_SUBPIXEL_RENDERING]: Add filtering
1059 callback and update other fields.
1060
1061 * src/smooth/ftsmooth.c (ft_smooth_render_generic)
1062 [FT_CONFIG_OPTION_SUBPIXEL_RENDERING]: Update.
1063 Other minor improvements.
1064
1065 * src/autofit/aflatin.c: Various tiny improvements that drastically
1066 improve the handling of serif fonts and of LCD/LCD_V hinting modes.
1067 (af_latin_hints_compute_edges): Fix typo.
1068 (af_latin_compute_stem_width): Take better care of diagonal stems.
David Turner8765c712006-11-10 16:49:42 +00001069
David Turner4e9cc3c2006-11-09 16:31:52 +000010702006-11-09 David Turner <david@freetype.org>
1071
Werner Lemberg49c77a82006-11-09 21:51:57 +00001072 * src/pshinter/pshalgo.c (psh_glyph_compute_inflections): Fix
1073 typo which created a variable-used-before-initialized bug.
David Turner4e9cc3c2006-11-09 16:31:52 +00001074
Werner Lemberg5e430892006-11-07 09:35:03 +000010752006-11-07 Zhe Su <james.su@gmail.com>
1076
1077 * src/base/ftsynth.c (FT_GlyphSlot_Embolden): Handle vertical layout
1078 also.
1079
Werner Lemberg111b5ae2006-11-03 09:40:12 +000010802006-11-03 Werner Lemberg <wl@gnu.org>
1081
1082 * src/base/ftcalc.c: Don't use `long long' but `FT_Int64'.
1083
David Turner40604742006-11-02 16:37:35 +000010842006-11-02 David Turner <david@freetype.org>
1085
Werner Lemberg111b5ae2006-11-03 09:40:12 +00001086 Add a few tweaks to better handle serif fonts.
1087 Add more debugging messages.
David Turner91b44e62006-11-02 23:28:09 +00001088
Werner Lemberg111b5ae2006-11-03 09:40:12 +00001089 * src/autofit/aflatin.c (af_latin_hints_compute_edges): Ignore
1090 segments that are less than 1.5 pixels high. This gets rid of
1091 *many* corner cases with serifs.
1092 (af_latin_align_linked_edge): Add logging message.
1093 (af_latin_hint_edges): Use AF_HINTS_DO_BLUES.
1094 Add logging messages.
1095 Handle AF_EDGE_FLAG flag specially.
1096
1097 * src/autofit/afmodule.c [AF_DEBUG]: Add _af_debug,
1098 _af_debug_disable_blue_hints, and _af_debug_hints variables.
1099
1100 * src/autofit/aftypes.h (AF_LOG) [AF_DEBUG]: Use _af_debug.
1101 Update external declarations.
1102 (af_corner_orientation, af_corner_is_flat): Replaced by...
1103
1104 * include/freetype/internal/ftcalc.h (ft_corner_orientation,
1105 ft_corner_is_flat): These declarations.
1106
1107 * src/autofit/afangles.c (af_corner_orientation, af_corner_is_flat):
1108 Comment out. Replaced by...
1109
1110 * src/base/ftcalc.h (ft_corner_orientation, ft_corner_is_flat):
1111 These functions. Update all callers.
1112 (FT_Add64) [!FT_LONG64]: Simplify.
1113
1114 * src/autofit/afhints.c: Include FT_INTERNAL_CALC_H.
1115 (af_direction_compute): Add a missing FT_ABS call. This bug caused
1116 production of garbage by missing lots of segments.
1117
1118 * src/autofit/afhints.h (AF_HINTS_DO_BLUES): New macro.
1119
1120 * src/autofit/afloader.c (af_loader_init, af_loader_done)
1121 [AF_DEBUG]: Set _af_debug_hints.
1122
1123
1124 * src/pshinter/pshalgo.c: Include FT_INTERNAL_CALC_H.
1125 (psh_corner_is_flat, psh_corner_orientation): Use ft_corner_is_flat
1126 and ft_corner_orientation.
1127
1128
1129 * src/gzip/inftrees.c (huft_build): Remove compiler warning.
David Turner40604742006-11-02 16:37:35 +00001130
Werner Lemberge88c5262006-10-24 05:46:26 +000011312006-10-24 Werner Lemberg <wl@gnu.org>
1132
1133 * src/cff/cffload.c (cff_encoding_load): Remove unused variable.
1134
1135 * src/base/ftobjs.c (FT_Select_Charmap): Disallow FT_ENCODING_NONE
1136 as argument.
1137
David Turnera1861392006-10-23 16:00:59 +000011382006-10-23 Zhe Su <zsu@novell.com>
1139
Werner Lemberg715e96e2006-10-24 05:28:45 +00001140 * src/base/ftoutln.c (FT_Outline_Get_Orientation): Re-implement to
1141 better deal with broken Asian fonts with strange glyphs, having
1142 self-intersections and other peculiarities. The used algorithm is
1143 based on the nonzero winding rule.
David Turnera1861392006-10-23 16:00:59 +00001144
David Turnere140f142006-10-23 08:56:57 +000011452006-10-23 David Turner <david@freetype.org>
1146
Werner Lemberg715e96e2006-10-24 05:28:45 +00001147 Speed up the CFF font loader. With some large CFF fonts,
1148 FT_Open_Face is now more than three times faster.
David Turner29873a02006-10-23 10:23:17 +00001149
Werner Lemberg715e96e2006-10-24 05:28:45 +00001150 * src/cff/cffload.c (cff_get_offset): Removed.
1151 (cff_new_index): Inline functionality of `cff_get_offset'.
1152 (cff_charset_compute_cids, cff_charset_free_cids): New functions.
1153 (cff_charset_done): Call `cff_charset_free_cids'.
1154 (cff_charset_load): Call `cff_charset_compute_cids'.
1155 (cff_encoding_load) <Populate>: Ditto, to replace inefficient loop.
1156
1157 * src/sfnt/ttmtx.c (tt_face_load_hmtx): Replace calls to FT_GET_XXX
1158 with FT_NEXT_XXX.
1159
1160
1161 Speed up the Postscript hinter, with more than 100% speed increase
1162 on my machine.
1163
1164 * src/pshinter/pshalgo.c (psh_corner_is_flat,
1165 psh_corner_orientation): New functions.
1166 (psh_glyph_compute_inflections): Merge loops for efficiency.
1167 Use `psh_corner_orientation'.
1168 (psh_glyph_init): Use `psh_corner_is_flat'.
1169 (psh_hint_table_find_strong_point): Renamed to...
1170 (psh_hint_table_find_strong_points): This.
1171 Rewrite, adding argument to handle all points at once.
1172 Update all callers.
1173 (PSH_MAX_STRONG_INTERNAL): New macro.
1174 (psh_glyph_interpolate_normal_points): Rewrite for efficiency.
David Turnere140f142006-10-23 08:56:57 +00001175
Suzuki, Toshiya (鈴木俊哉)07088262006-10-15 07:15:28 +000011762006-10-15 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
1177
1178 * src/base/ftmac.c (FT_New_Face_From_FOND): Initialize variable
Werner Lembergb9e6d692006-10-15 08:58:40 +00001179 `error' with FT_Err_Ok.
Suzuki, Toshiya (鈴木俊哉)07088262006-10-15 07:15:28 +00001180
Suzuki, Toshiya (鈴木俊哉)bfe872d2006-10-14 13:08:05 +000011812006-10-14 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
1182
1183 * docs/INSTALL.CROSS: New document file for cross-building.
1184
1185 * builds/unix/configure.raw: Preliminary cross-building support.
1186 Find native C compiler and pass it by CC_BUILD, and
1187 find suffix for native executable and pass it by EXEEXT_BUILD.
1188 Also suffix for target executable is passed by EXEEXT.
1189
Werner Lembergb9e6d692006-10-15 08:58:40 +00001190 * builds/unix/unix-cc.in (CCraw_build, E_BUILD): New variables to
1191 build `apinames' which runs on building system. They are set by
Suzuki, Toshiya (鈴木俊哉)bfe872d2006-10-14 13:08:05 +00001192 CC_BUILD and EXEEXT_BUILD.
1193
Werner Lembergb9e6d692006-10-15 08:58:40 +00001194 * builds/exports.mk (APINAMES_EXE): Change the extension for
1195 apinames from the suffix for target (E) to that for building host
1196 (E_BUILD).
Suzuki, Toshiya (鈴木俊哉)bfe872d2006-10-14 13:08:05 +00001197
Werner Lemberg82a07e92006-10-12 06:20:44 +000011982006-10-12 Werner Lemberg <wl@gnu.org>
1199
1200 * docs/INSTALL.UNX, docs/UPGRADE.UNX: Renamed to...
1201 * docs/INSTALL.UNIX, docs/UPGRADE.UNIX: This. Update all documents
1202 which reference those files.
1203
Suzuki, Toshiya (鈴木俊哉)9d499612006-10-12 01:35:54 +000012042006-10-12 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
1205
Werner Lembergb9e6d692006-10-15 08:58:40 +00001206 * builds/unix/configure.raw (FT2_EXTRA_LIBS): New variable. It is
1207 embedded in freetype2.pc and freetype-config. Use it to record
1208 Carbon dependency of MacOSX.
Suzuki, Toshiya (鈴木俊哉)9d499612006-10-12 01:35:54 +00001209
1210 * builds/unix/freetype2.in: Embed FT2_EXTRA_LIBS.
1211
1212 * builds/unix/freetype-config.in: Ditto.
1213
Werner Lemberg28e17d92006-10-11 17:27:47 +000012142006-10-11 Werner Lemberg <wl@gnu.org>
1215
1216 * devel/ftoption.h (FT_CONFIG_OPTION_SUBPIXEL_RENDERING): Define for
1217 development.
1218
Jens Claudius336d2292006-10-03 08:53:37 +000012192006-10-03 Jens Claudius <jens.claudius@yahoo.com>
1220
1221 * include/freetype/config/ftstdlib.h: Cast away volatileness from
1222 argument to ft_setjmp.
1223
1224 * include/freetype/internal/ftvalid.h: Add comment that
1225 ft_validator_run must not be used.
1226
Werner Lemberg2863cfa2006-10-01 17:04:00 +000012272006-10-01 Werner Lemberg <wl@gnu.org>
1228
1229 * src/base/ftbase.c: Undo change from 2006-09-30.
1230
1231 * src/base/rules.mk (BASE_SRC): Remove `ftlcdfil.c'.
1232
12332006-09-30 David Turner <david@freetype.org>
1234
Werner Lemberg046bf8b2006-10-03 08:43:42 +00001235 * include/freetype/internal/ftobjs.h (FT_Face_InternalRec):
1236 s/unpatented_hinting/ignore_unpatented_hinter/.
1237 Update all callers.
1238
1239 * src/base/ftobjs.c (FT_Load_Glyph): Refine the algorithm whether
1240 auto-hinting shall be used or not.
1241
1242 * src/truetype/ttobjs.c (tt_face_init): Ditto.
David Turnere140f142006-10-23 08:56:57 +00001243
Werner Lemberg2863cfa2006-10-01 17:04:00 +000012442006-09-30 Werner Lemberg <wl@gnu.org>
1245
Werner Lemberg1e4402e2006-09-29 22:10:36 +00001246 * src/base/rules.mk (BASE_SRC): Remove `ftapi.c' (which is no longer
1247 in use).
1248
1249 * src/base/ftbase.c: Include `ftlcdfil.c'.
1250
Werner Lemberg9b15ea32006-09-29 18:22:11 +000012512006-09-29 Werner Lemberg <wl@gnu.org>
1252
1253 * src/sfnt/ttcmap.c (tt_cmap4_char_map_binary): Fix algorithm for
1254 overlapping segments. Bug reported by Stefan Koch.
1255
David Turnerad830712006-09-27 16:20:59 +000012562006-09-28 David Turner <david@freetype.org>
1257
Werner Lemberg2c002e12006-09-29 21:31:53 +00001258 Fix a bug in the automatic unpatented hinting support which prevents
1259 normal bytecode hinting to work properly.
David Turnerad830712006-09-27 16:20:59 +00001260
Werner Lemberg2c002e12006-09-29 21:31:53 +00001261 * include/freetype/internal/ftobjs.h (FT_Face_InternalRec):
1262 s/force_autohint/unpatented_hinting/. Update all callers.
1263
1264 * src/base/ftobjs.c (FT_Load_Glyph): Updated code.
1265
1266 * src/autofit/aftypes.h (AF_DEBUG): Undefine to get rid of traces.
David Turnerad830712006-09-27 16:20:59 +00001267
David Turner8a317cf2006-09-27 07:52:48 +000012682006-09-27 David Turner <david@freetype.org>
1269
Werner Lemberg2c002e12006-09-29 21:31:53 +00001270 * include/freetype/freetype.h (FT_FREETYPE_PATCH): Set to 2.
David Turner8a317cf2006-09-27 07:52:48 +00001271
David Turner8a317cf2006-09-27 07:52:48 +00001272
David Turnere140f142006-10-23 08:56:57 +00001273 Add a new API to support color filtering of subpixel glyph bitmaps.
Werner Lemberg2c002e12006-09-29 21:31:53 +00001274 In a default build, the function `FT_Library_SetLcdFilter' returns
1275 `FT_Err_Unimplemented_Feature'; you need to #define
1276 FT_CONFIG_OPTION_SUBPIXEL_RENDERING in ftoption.h to compile the
1277 real implementation.
David Turner8a317cf2006-09-27 07:52:48 +00001278
Werner Lemberg2c002e12006-09-29 21:31:53 +00001279 * include/freetype/ftlcdfil.h, src/base/ftlcdfil.c: New files.
David Turner8a317cf2006-09-27 07:52:48 +00001280
Werner Lemberg2c002e12006-09-29 21:31:53 +00001281 * include/freetype/internal/ftobjs.h (FT_Bitmap_LcdFilterFunc): New
1282 typedef.
1283 (FT_LibraryRec) [FT_CONFIG_OPTION_SUBPIXEL_RENDERING]: New members
1284 `lcd_filter_weights' and `lcd_filter'.
David Turner26bb2e22006-09-27 07:58:43 +00001285
Werner Lemberg2c002e12006-09-29 21:31:53 +00001286 * src/smooth/ftsmooth.c (ft_smooth_render_generic): Remove arguments
1287 `hmul' and `vmul'.
Werner Lemberg715e96e2006-10-24 05:28:45 +00001288
Werner Lemberg2c002e12006-09-29 21:31:53 +00001289 Handle subpixel rendering.
1290 Simplify function.
1291 (ft_smooth_render_lcd): Use `FT_RENDER_MODE_LCD'.
1292 (ft_smooth_render_lcd_v): Use `FT_RENDER_MODE_LCD_V'.
1293
1294 * include/freetype/config/ftheader.h (FT_LCD_FILTER_H): New macro,
1295 pointing to <freetype/ftlcdfil.h>.
1296
1297 * src/base/Jamfile (_sources), src/base/rules.mk (BASE_SRC),
1298 vms_make.com: Add `ftlcdfil.c' to the list of compiled source files.
1299
1300 * modules.cfg (BASE_EXTENSIONS): Add ftlcdfil.c.
David Turner87e4b332006-09-27 08:45:49 +00001301
Werner Lemberge20df4a2006-09-27 06:29:21 +000013022006-09-26 David Bustin
1303
1304 * src/pfr/pfrobjs.c (pfr_face_get_kerning): Skip adjustment bytes
1305 correctly. Reported as Savannah bug #17843.
1306
David Turner6f8c6222006-09-26 15:42:44 +000013072006-09-26 David Turner <david@freetype.org>
1308
Werner Lemberg110246c2006-09-26 21:55:44 +00001309 * src/autofit/afhints.h (AF_HINTS_DO_HORIZONTAL,
1310 AF_HINTS_DO_VERTICAL, AF_HINTS_DO_ADVANCE): New macros to disable
1311 horizontal and vertical hinting for the purpose of debugging the
1312 auto-fitter.
David Turner6f8c6222006-09-26 15:42:44 +00001313
Werner Lemberg110246c2006-09-26 21:55:44 +00001314 * src/autofit/afmodule.c (_af_debug_disable_horz_hints,
1315 _af_debug_disable_vert_hints) [AF_DEBUG]: New global variables.
David Turnere3d6e942006-09-26 16:58:21 +00001316
Werner Lemberg110246c2006-09-26 21:55:44 +00001317 * src/autofit/aftypes.h [AF_DEBUG]: Declare above variables.
1318
1319 * include/freetype/config/ftoption.h, devel/ftoption.h
1320 (FT_CONFIG_OPTION_SUBPIXEL_RENDERING): New macro to control whether
1321 we want to compile LCD-optimized rendering code (à la ClearType) or
1322 not. The macro *must* be disabled in default builds of the library
1323 for patent reasons.
1324
1325 * src/smooth/ftsmooth.c (ft_smooth_render_generic): Disable
1326 LCD-specific rendering when FT_CONFIG_OPTION_SUBPIXEL_RENDERING
1327 isn't defined at compile time. This only changes the content of the
1328 rendered glyph to match the one of normal gray-level rendering,
1329 hence clients should not need to be modified.
1330
1331 * docs/CHANGES: Updated.
David Turnere3d6e942006-09-26 16:58:21 +00001332
Werner Lemberg745ff2c2006-09-19 05:48:02 +000013332006-09-18 Garrick Meeker <garrick@digitalanarchy.com>
1334
1335 * src/base/ftmac.c (FT_New_Face_From_FOND): Fall back to SFNT if
1336 LWFN fails and both are available.
1337
David Turnerf3050052006-09-11 12:00:32 +000013382006-09-11 David Turner <david@freetype.org>
1339
Werner Lembergf9644552006-09-12 13:48:10 +00001340 * src/sfnt/sfobjs.c (tt_face_get_name): Support some fonts which
1341 report their English names through an Apple Roman
1342 (platform,encoding) pair, with language_id != English.
David Turnerf3050052006-09-11 12:00:32 +00001343
Werner Lembergf9644552006-09-12 13:48:10 +00001344 If the font uses another name entry with language_id == English, it
1345 will be selected correctly, though.
David Turnerf3050052006-09-11 12:00:32 +00001346
Werner Lembergf9644552006-09-12 13:48:10 +00001347 * src/truetype/ttobjs.c (tt_face_init): Add unpatented hinting
1348 selection for `mingli.ttf'.
David Turnerf3050052006-09-11 12:00:32 +00001349
Werner Lemberg36d2eab2006-09-05 19:24:34 +000013502006-09-05 Werner Lemberg <wl@gnu.org>
1351
1352 * src/truetype/ttpload.c (tt_face_load_hdmx): Handle `record_size'
Werner Lembergf9644552006-09-12 13:48:10 +00001353 values which have the upper two bytes set to 0xFF instead of 0x00
Werner Lemberg36d2eab2006-09-05 19:24:34 +00001354 (as it happens in at least two CJKV fonts, `HAN NOM A.ttf' and
1355 `HAN NOM B.ttf').
1356
1357 * src/smooth/ftgrays.c [GRAYS_USE_GAMMA]: Really remove all code.
1358
David Turner772e55d2006-09-05 09:45:15 +000013592006-09-05 David Turner <david@freetype.org>
1360
Werner Lemberg36d2eab2006-09-05 19:24:34 +00001361 Minor source cleanups and optimizations.
David Turnerc7bc9b72006-09-05 12:17:38 +00001362
Werner Lemberg36d2eab2006-09-05 19:24:34 +00001363 * src/smooth/ftgrays.c (GRAYS_COMPACT): Removed.
1364 (TRaster): Remove `count_ex' and `count_ey'.
1365 (gray_find_cell): Remove 2nd and 3rd argument.
1366 (gray_alloc_cell): Merged with `gray_find_cell'.
1367 (gray_record_cell): Simplify.
1368 (gray_set_cell): Rewrite.
1369 (gray_start_cell): Apply offsets to `ras.ex' and `ras.ey'.
1370 (gray_render_span): Don't use FT_MEM_SET for small values.
1371 (gray_dump_cells) [DEBUG_GRAYS]: New function.
1372 (gray_sweep): Avoid buffer overwrites when to drawing the end of a
1373 bitmap scanline.
1374 (gray_convert_glyph): Fix speed-up.
David Turner772e55d2006-09-05 09:45:15 +00001375
David Turneraa557a92006-09-04 16:42:44 +000013762006-09-04 David Turner <david@freetype.org>
1377
Werner Lembergd1fc7d42006-09-05 07:55:42 +00001378 * src/smooth/ftgrays.c (gray_convert_glyphs): Make it work with
1379 64bit processors.
David Turneraa557a92006-09-04 16:42:44 +00001380
Werner Lemberg2d8629b2006-09-03 06:18:45 +000013812006-09-03 Werner Lemberg <wl@gnu.org>
1382
1383 * devel/ftoption.h: Synchronize with
1384 include/freetype/config/ftoption.h.
1385
1386 * src/smooth/ftgrays.c (gray_record_cell): Remove shadowing
1387 variable declaration.
1388 (gray_convert_glyph): Fix compiler warnings.
1389
David Turner6d79f212006-09-01 14:09:35 +000013902006-09-01 David Turner <david@freetype.org>
1391
Werner Lemberg2d8629b2006-09-03 06:18:45 +00001392 * src/truetype/ttobjs.c (tt_face_init): Update the TrueType loader
1393 to recognize a few fonts that require the automatic unpatented
1394 loader.
David Turnerbd502952006-09-01 19:05:24 +00001395
Werner Lemberg2d8629b2006-09-03 06:18:45 +00001396 * src/smooth/ftgrays.c: Optmize the performance of the anti-aliased
1397 rasterizer. The speed improvement is between 15% and 25%, depending
1398 on the font data.
1399
1400 (GRAYS_USE_GAMMA, GRAYS_COMPACT): Removed, and all associated code.
1401 (TCell): Redefine.
1402 (TRaster): New members `buffer', `buffer_size', `ycells', `ycount'.
1403 (gray_init_cells): Updated.
1404 (gray_find_cell, gray_alloc_cell): New functions.
1405 (gray_record_cell): Rewritten to use `gray_find_cell' and
1406 `gray_alloc_cell'.
1407 (PACK, LESS_THAN, SWAP_CELLS, DEBUG_SORT, QUICK_SORT, SHELL_SORT,
1408 QSORT_THRESHOLD):
1409 Removed.
1410 (gray_shell_sort, gray_quick_sort, gray_check_sort,
1411 gray_dump_cells): Removed.
1412 (gray_sweep): Rewritten.
1413 (gray_convert_glyph): Rewrite code which used one of the sorting
1414 functions.
1415 (gray_raster_render): Updated.
David Turner6d79f212006-09-01 14:09:35 +00001416
Werner Lembergd898aed2006-08-29 09:50:34 +000014172006-08-29 Dr. Werner Fink <werner@suse.de>
1418
1419 * configure: Make it possible to handle configure options which
1420 have strings containing spaces.
1421
14222006-08-27 David Turner <david@freetype.org>
1423
Werner Lemberg2d8629b2006-09-03 06:18:45 +00001424 * include/freetype/config/ftoption.h (TT_USE_BYTECODE_INTERPRETER):
1425 New macro, defined if either TT_CONFIG_OPTION_BYTECODE_INTERPRETER
1426 or TT_CONFIG_OPTION_UNPATENTED_HINTING is defined.
1427
1428 * include/freetype/internal/ftcalc.h, src/base/ftcalc.c,
1429 src/truetype/truetype.c, src/truetype/ttdriver.c,
1430 src/truetype/ttgload.c, src/truetype/ttgload.h,
1431 src/truetype/ttinterp.c, src/truetype/ttobjs.c,
1432 src/truetype/ttobjs.h, src/truetype/ttpload.c, src/type42/t42drivr.c:
1433 s/TT_CONFIG_OPTION_BYTECODE_INTERPRETER/TT_USE_BYTECODE_INTERPRETER/.
1434
1435 * include/freetype/internal/ftobjs.h (FT_Face_InternalRec): New
1436 member `force_autohint'.
1437
1438 * src/base/ftobjs.c (FT_Load_Glyph): Use `force_autohint'.
1439
1440 * src/truetype/ttobjs.c (tt_face_init): Prepare code for testing
1441 against a list of font names which need the bytecode interpreter.
Werner Lembergd898aed2006-08-29 09:50:34 +00001442
Jens Claudiusa787f452006-08-27 11:26:18 +000014432006-08-27 Jens Claudius <jens.claudius@yahoo.com>
1444
1445 Fix miscellaneous compiler warnings.
1446
Werner Lemberg2d8629b2006-09-03 06:18:45 +00001447 * freetype2/include/freetype/internal/ftobjs.h: Close comment with
1448 `*/' to avoid `/* in comment' compiler warning.
Jens Claudiusa787f452006-08-27 11:26:18 +00001449
Werner Lemberg2d8629b2006-09-03 06:18:45 +00001450 * freetype2/src/base/ftdbgmem.c (ft_mem_table_get_source): Turn cast
1451 `(FT_UInt32)(void*)' into `(FT_UInt32)(FT_PtrDist)(void*)' since on
1452 64-bit platforms void* is larger than FT_UInt32.
Jens Claudiusa787f452006-08-27 11:26:18 +00001453
Werner Lemberg2d8629b2006-09-03 06:18:45 +00001454 * freetype2/src/base/ftobjs.c (t_validator_error): Cast away
1455 volatileness of argument to ft_longjmp. Spotted by Werner
1456 `Putzfrau' Lemberg.
Jens Claudiusa787f452006-08-27 11:26:18 +00001457
Werner Lemberg2d8629b2006-09-03 06:18:45 +00001458 * freetype2/src/bdf/bdflib.c (bdf_load_font): Initialize local
1459 variable `lineno'.
Jens Claudiusa787f452006-08-27 11:26:18 +00001460
Werner Lemberg2d8629b2006-09-03 06:18:45 +00001461 * freetype2/src/gxvalid/gxvmod.c (classic_kern_validate): Mark local
1462 variable `error' as volatile.
Jens Claudiusa787f452006-08-27 11:26:18 +00001463
Werner Lembergc4c35b72006-08-27 08:03:46 +000014642006-08-27 Werner Lemberg <wl@gnu.org>
1465
1466 * builds/unix/ftconfig.in: Synchronize with main ftconfig.h.
1467 Reported by Jens.
1468
Jens Claudius088e44e2006-08-22 14:24:30 +000014692006-08-22 Jens Claudius <jens.claudius@yahoo.com>
Werner Lembergc4c35b72006-08-27 08:03:46 +00001470
Jens Claudius088e44e2006-08-22 14:24:30 +00001471 Fix for previous commit, which caused many compiler warnings/errors
Werner Lembergc4c35b72006-08-27 08:03:46 +00001472 about addresses of volatile objects passed as function arguments as
1473 non-volatile pointers.
Jens Claudius088e44e2006-08-22 14:24:30 +00001474
Werner Lembergc4c35b72006-08-27 08:03:46 +00001475 * freetype2/include/freetype/internal/ftvalid.h: Make FT_Validator
1476 typedef a pointer to a volatile object.
Jens Claudius088e44e2006-08-22 14:24:30 +00001477
1478 * freetype2/src/gxvalid/gxvmod.c (gxv_load_table): Make function
1479 argument `table' a pointer to a volatile object.
1480
1481 * freetype2/src/otvalid/otvmod.c (otv_load_table): Make function
1482 argument `table' a pointer to a volatile object.
1483
Jens Claudius2652bd52006-08-18 17:20:37 +000014842006-08-18 Jens Claudius <jens.claudius@yahoo.com>
1485
1486 * freetype2/src/gxvalid/gxvmod.c (GXV_TABLE_DECL): Mark local
1487 variable `_sfnt' as volatile since it must keep its value across
1488 a call to ft_setjmp.
1489 (gxv_validate): Same for local variables `memory' and `valid'.
1490 (classic_kern_validate): Same for local variables `memory',
1491 `ckern', and `valid'.
1492
1493 * freetype2/src/otvalid/otvmod.c (otv_validate): Same for function
1494 parameter `face' and local variables `base', `gdef', `gpos', `gsub',
1495 `jstf', and 'valid'.
1496
1497 * freetype2/src/sfnt/ttcmap.c (tt_face_build_cmaps): Same for
1498 local variable `cmap'.
1499
David Turner9fbfc6a2006-08-16 09:11:31 +000015002006-08-16 David Turner <david@freetype.org>
1501
Werner Lemberg12342992006-08-19 11:18:09 +00001502 * src/cid/cidgload.c (cid_slot_load_glyph): Remove compiler
1503 warnings.
David Turner9fbfc6a2006-08-16 09:11:31 +00001504
Werner Lemberg12342992006-08-19 11:18:09 +00001505 * src/base/ftobjs.c (ft_validator_run): Disable function; it is
1506 buggy by design. Always return -1.
David Turner2b21a932006-08-16 09:24:32 +00001507
David Turner33f5f242006-08-16 16:50:55 +00001508
Werner Lemberg12342992006-08-19 11:18:09 +00001509 Improvements to native TrueType hinting. This is a first try,
1510 controlled by the FIX_BYTECODE macro in src/truetype/ttinterp.c.
1511
1512 * include/freetype/internal/ftgloadr.h (FT_GlyphLoadRec): Add member
1513 `extra_points2'.
1514
1515 * include/freetype/internal/tttypes.h (TT_GlyphZoneRec): Add member
1516 `orus'.
1517
1518 * src/base/ftgloadr.c (FT_GlyphLoader_Reset,
1519 FT_GlyphLoader_Adjust_Points, FT_GlyphLoader_CreateExtra,
1520 FT_GlyphLoader_CheckPoints, FT_GlyphLoader_CopyPoints): Updated to
1521 handle `extra_points2'.
1522
1523 * src/truetype/ttgload.c (tt_prepare_zone): Handle `orus'.
1524 Remove compiler warning.
1525 (cur_to_arg): Remove macro.
1526 (TT_Hint_Glyph): Updated.
1527 (TT_Process_Simple_Glyph): Handle `orus'.
1528
1529 * src/truetype/ttinterp.c (FIX_BYTECODE): New macro.
1530 (Ins_MD, Ins_MDRP, Ins_IP) [FIX_BYTECODE]: Handle `orus'.
1531 (LOC_Ins_IUP): Renamed to...
1532 (IUP_WorkerRec): This.
1533 Add `orus' member.
1534 (Shift): Renamed to...
1535 (_iup_worker_shift): This.
1536 Updated.
1537 (Interp): Renamed to...
1538 (_iup_worker_interpolate): This.
1539 Updated to handle `orus'.
1540 (Ins_IUP): Updated.
1541
1542 * src/truetype/ttobjs.c (tt_glyphzone_done, tt_glyphzone_new):
1543 Handle `orus'.
David Turner33f5f242006-08-16 16:50:55 +00001544
Suzuki, Toshiya (鈴木俊哉)e261f422006-08-15 17:00:43 +000015452006-08-15 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
1546
Suzuki, Toshiya (鈴木俊哉)f1e96062006-08-15 17:02:47 +00001547 * modules.cfg (BASE_EXTENSIONS): Compile in ftgxval.c by default to
Werner Lemberg12342992006-08-19 11:18:09 +00001548 build ftvalid in ft2demos. This has been inadvertedly changed
1549 2006-08-13.
Suzuki, Toshiya (鈴木俊哉)f1e96062006-08-15 17:02:47 +00001550
15512006-08-15 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
1552
Werner Lemberg12342992006-08-19 11:18:09 +00001553 `ft_validator_run' wrapping `setjmp' can cause a crash, as found by
1554 Jens:
1555 http://lists.nongnu.org/archive/html/freetype-devel/2006-08/msg00004.htm.
Suzuki, Toshiya (鈴木俊哉)e261f422006-08-15 17:00:43 +00001556
Werner Lemberg12342992006-08-19 11:18:09 +00001557 * freetype2/src/otvalid/otvmod.c: Replace `ft_validator_run' by
1558 `ft_setjmp'. It reverts the change introduced on 2005-08-20.
Suzuki, Toshiya (鈴木俊哉)e261f422006-08-15 17:00:43 +00001559
1560 * freetype2/src/gxvalid/gxvmod.c: Ditto.
1561
Jens Claudius9950adc2006-08-13 12:14:36 +000015622006-08-13 Jens Claudius <jens.claudius@yahoo.com>
1563
Werner Lemberg12342992006-08-19 11:18:09 +00001564 * freetype2/include/freetype/internal/psaux.h: (T1_TokenType): Add
1565 T1_TOKEN_TYPE_KEY.
1566 (T1_FieldRec): Add `dict'.
1567 (T1_FIELD_DICT_FONTDICT, T1_FIELD_DICT_PRIVATE): New macros.
1568 (T1_NEW_XXX, T1_FIELD_XXX): Update to take the dictionary where a PS
1569 keyword is expected as an additional argument.
Jens Claudius9950adc2006-08-13 12:14:36 +00001570
Werner Lemberg12342992006-08-19 11:18:09 +00001571 * freetype2/src/cid/cidload.c: (cid_field_records): Adjust
1572 invocations of T1_FIELD_XXX.
Jens Claudius9950adc2006-08-13 12:14:36 +00001573
1574 * freetype2/src/cid/cidtoken.h: Adjust invocations of T1_FIELD_XXX.
1575
1576 * freetype2/src/psaux/psobjs.c: Add macro FT_COMPONENT for tracing.
Werner Lemberg12342992006-08-19 11:18:09 +00001577 (ps_parser_to_token): Report a PostScript key as T1_TOKEN_TYPE_KEY,
1578 not T1_TOKEN_TYPE_ANY.
1579 (ps_parser_load_field): Make sure a token that should be a string or
1580 name is really a string or name.
1581 Avoid memory leak if a keyword has been already encountered and its
1582 value is overwritten.
1583 * freetype2/src/type1/t1load.c: (t1_keywords): Adjust invocations of
1584 T1_FIELD_XXX.
1585 (parse_dict): Ignore keywords that occur in the wrong dictionary
1586 (e.g., in `Private' instead of `FontDict').
Jens Claudius9950adc2006-08-13 12:14:36 +00001587
Werner Lemberg12342992006-08-19 11:18:09 +00001588 * freetype2/src/type1/t1tokens.h: Adjust invocations of
1589 T1_FIELD_XXX.
Jens Claudius9950adc2006-08-13 12:14:36 +00001590
Werner Lemberg12342992006-08-19 11:18:09 +00001591 * freetype2/src/type42/t42parse.c: (t42_keywords): Adjust
1592 invocations of T1_FIELD_XXX.
Jens Claudius9950adc2006-08-13 12:14:36 +00001593
Werner Lemberga4d6a1c2006-07-19 09:54:56 +000015942006-07-18 Jens Claudius <jens.claudius@yahoo.com>
1595
1596 Move creation of field `buildchar' of T1_DecoderRec out of
1597 `t1_decoder_init' and let the caller of `t1_decoder_init' take care
1598 of it.
1599
1600 Call the finisher for T1_Decoder in `cid_face_compute_max_advance'
1601 and `T1_Compute_Max_Advance'.
1602
1603 * freetype2/include/freetype/internal/psaux.h (T1_DecoderRec):
1604 Remove field `face', add `len_buildchar'.
1605
1606 * freetype2/include/freetype/internal/t1types.h (T1_FaceRec): Add
1607 field `buildchar'.
1608
1609 * freetype2/src/cid/cidgload.c (cid_face_compute_max_advance): Call
1610 finisher for T1_Decoder.
1611 (cid_slot_load_glyph): Do not ignore failure when initializing the
1612 T1_Decoder.
1613
1614 * freetype2/src/psaux/t1decode.c (t1_decoder_parse_charstrings):
1615 Updated.
1616 (t1_decoder_init): Remove initialization of fields `buildchar' and
1617 `len_buildchar'.
1618 (t1_decoder_done): Remove deallocation of field `buildchar'.
1619
1620 * freetype/src/type1/t1gload.c (T1_Compute_Max_Advance): Initialize
1621 T1_Decoder's `buildchar' and `len_buildchar'; call finisher for
1622 T1_Decoder.
1623 (T1_Load_Glyph): Initialize T1_Decoder's `buildchar' and
1624 `len_buildchar'; make sure to call finisher for T1_Decoder even in
1625 case of error.
1626
1627 * freetype2/src/type1/t1load.c (T1_Open_Face): Allocate new field
1628 `buildchar' of T1_FaceRec.
1629
1630 * freetype2/src/type1/t1objs.c (T1_Face_Done): Free new field
1631 `buildchar' of T1_FaceRec.
1632
Werner Lemberg1a380e02006-07-14 18:28:08 +000016332006-07-14 Jens Claudius <jens.claudius@yahoo.com>
1634
1635 * freetype2/include/freetype/internal/psaux.h: New macros
1636 IS_PS_NEWLINE, IS_PS_SPACE, IS_PS_SPECIAL, IS_PS_DELIM, IS_PS_DIGIT,
1637 IS_PS_XDIGIT, and IS_PS_BASE85 (from freetype2/src/psaux/psconv.h).
1638 (T1_FieldLocation): Add T1_FIELD_LOCATION_LOADER,
1639 T1_FIELD_LOCATION_FACE, and T1_FIELD_LOCATION_BLEND.
1640 (T1_DecoderRec): New fields `buildchar' and `face'.
1641 (IS_PS_TOKEN): New macro.
1642
1643 * freetype2/include/freetype/internal/t1types.h (T1_FaceRec): New
1644 fields `ndv_idx', `cdv_idx', and `len_buildchar'.
1645
1646 * freetype2/include/freetype/t1tables.h (PS_BlendRec): New fields
1647 `default_design_vector' and `num_default_design_vector'.
1648
1649 * freetype2/src/psaux/psconv.h: Move macros IS_PS_NEWLINE,
1650 IS_PS_SPACE, IS_PS_SPECIAL, IS_PS_DELIM, IS_PS_DIGIT, IS_PS_XDIGIT,
1651 and IS_PS_BASE85 to freetype2/include/freetype/internal/psaux.h.
1652
1653 * freetype2/src/psaux/psobjs.c (ps_parser_to_token_array): Allow
1654 `token' argument to be NULL if we want only to count the number of
1655 tokens.
1656 (ps_tocoordarray): Allow `coords' argument to be NULL if we just
1657 want to skip the array.
1658 (ps_tofixedarray): Allow `values' argument to be NULL if we just
1659 want to skip the array.
1660
1661 * freetype2/src/psaux/t1decode.c (t1_decoder_parse_charstrings): Add
1662 support for (partially commented out) othersubrs 19-25, 27, and 28.
1663 (t1_decoder_init): Initialize new fields `face' and `buildchar'.
1664 (t1_decoder_done): Release new field `buildchar'.
1665
1666 * freetype2/src/type1/t1load.c (parse_buildchar, parse_private): New
1667 functions.
1668 (t1_keywords): Register them.
1669 (t1_allocate_blend): Updated.
1670 (t1_load_keyword): Handle field types T1_FIELD_LOCATION_LOADER,
1671 T1_FIELD_LOCATION_FACE and T1_FIELD_LOCATION_BLEND.
1672 (parse_dict): Remove `keyword_flags' argument.
1673 Use new macro IS_PS_TOKEN.
1674 Changed function so that later PostScript definitions override
1675 earlier ones.
1676 (t1_init_loader): Initialize new field `keywords_encountered'.
1677 (T1_Open_Face): Initialize new fields `ndv_idx', `cdv_idx', and
1678 `len_buildchar'.
1679 Remove `keywords_flags'.
1680
1681 * freetype2/src/type1/t1load.h (T1_LoaderRect): New field
1682 `keywords_encountered'.
1683 (T1_PRIVATE, T1_FONTDIR_AFTER_PRIVATE): New macros.
1684
1685 * freetype2/src/type1/t1tokens.h [!T1_CONFIG_OPTION_NO_MM_SUPPORT]:
1686 New entries for parsing /NDV, /CDV, and /DesignVector.
1687
Werner Lemberg4af3c4d2006-07-08 21:31:24 +000016882006-07-07 Werner Lemberg <wl@gnu.org>
1689
1690 Add many checks to protect against malformed PCF files.
1691
1692 * src/pcf/pcfdrivr.c (PCF_Face_Done): Protect against NULL pointers.
1693 (PCF_Face_Init): Add calls to PCF_Face_Done in case of errors.
1694
1695 * src/pcf/pcfread.c (pcf_read_TOC): Protect against malformed table
1696 data and check that tables don't overlap (using a simple
1697 bubblesort).
1698 (PCF_METRIC_SIZE, PCF_COMPRESSED_METRIC_SIZE, PCF_PROPERTY_SIZE):
1699 New macros which give the size of data structures in the data
1700 stream.
1701 (pcf_get_properties): Use rough estimates to get array size limits.
1702 Assign `face->nprops' and `face->properties' earlier so that a call
1703 to PCF_Face_Done can do the clean-up in case of error.
1704 Protect against invalid string offsets.
1705 (pcf_get_metrics): Clean up code.
1706 Adjust tracing message levels.
1707 Use rough estimate to get array size limit.
1708 (pcf_get_bitmaps): Clean up code.
1709 Adjust tracing message levels.
1710 Use rough estimates to get offset limits.
1711 (pcf_get_encodings): Adjust tracing message level.
1712 (pcf_get_accel): Clean up code.
1713
Werner Lemberg8eb05252006-06-27 06:20:01 +000017142006-06-26 Werner Lemberg <wl@gnu.org>
1715
1716 * src/bdf/bdfdrivr.c (BDF_Face_Init): Handle fonts correctly which
1717 don't have a POINT_SIZE property. This fixes Savannah bug #16914.
1718
Werner Lemberg24703f82006-06-26 19:12:51 +000017192006-06-26 Jens Claudius <jens.claudius@yahoo.com>
1720
1721 * src/psaux/t1decode.c (T1_Operator, t1_args_count): Add opcode 15.
1722 (t1_decoder_parse_charstrings): Operator with
1723 opcode 15 pops its two arguments.
1724 Handle the case where the pops of an othersubr may be part of a
1725 subroutine.
1726 Handle unknown othersubrs gracefully: count their operands and let
1727 the following pop operators push the operands as the results onto
1728 the Type1 stack.
1729 Improve handling of setcurrentpoint opcode.
1730
Werner Lembergc011f4c2006-06-26 09:40:00 +000017312006-06-25 Jens Claudius <jens.claudius@yahoo.com>
1732
1733 The Type 1 parser now skips over top-level procedures as required
1734 for a `Simplified Parser'. This makes the parser more robust as it
1735 doesn't poke around in PostScript code. Additionally, it makes the
1736 FontDirectory hackery in src/type1/t1load.c unnecessary.
1737
1738 * src/psaux/psobjs.c (IS_OCTAL_DIGIT): New macro.
1739 (skip_literal_string): Add FT_Error as return value.
1740 Handle escapes better.
1741 (skip_string): Add FT_Error as return value.
1742 Don't set `parser->error' but return error code directly.
1743 (skip_procedure): New function.
1744 (ps_parser_skip_PS_token): Handle procedures.
1745 Update code.
1746 (ps_parser_to_token): Update code.
1747 (ps_parser_load_field_table): Handle bbox entries also.
1748
1749 * src/type1/t1load.c (parse_dict): Remove FontDirectory hackery.
1750 Add commented-out code for synthetic fonts.
1751
Werner Lemberga2da05c2006-06-25 06:27:27 +000017522006-06-24 Eugeniy Meshcheryakov <eugen@univ.kiev.ua>
1753
1754 Fix two hinting bugs as reported in
1755 http://lists.nongnu.org/archive/html/freetype-devel/2006-06/msg00057.html.
1756
1757 * include/freetype/internal/tttypes.h (TT_GlyphZoneRec): Add
1758 `first_point' member.
1759
1760 * src/truetype/ttgload.c (tt_prepare_zone): Initialize
1761 `first_point'.
1762 (TT_Process_Composite_Glyph): Always untouch points.
1763
1764 * src/truetype/ttinterp.c (Ins_SHC): Fix computation of
1765 `first_point' and `last_point' in case of composite glyphs.
1766 (Ins_IUP): Fix computation of `end_point'.
1767
Suzuki, Toshiya (鈴木俊哉)52311972006-06-22 02:34:27 +000017682006-06-22 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
1769
Werner Lembergef3d2c22006-06-25 06:07:14 +00001770 Insert EndianS16_BtoN and EndianS32_BtoN as workaround for Intel
1771 Mac. The original patch was written by David Sachitano and Lawrence
1772 Coopet, and modified by Sean McBride for MPW compatibility. Only
1773 required data are converted; unused data are left in big endian.
Suzuki, Toshiya (鈴木俊哉)52311972006-06-22 02:34:27 +00001774
Werner Lembergef3d2c22006-06-25 06:07:14 +00001775 * src/base/ftmac.c: Include <Endian.h> for byteorder macros for non
1776 Mac OS X platforms.
1777 (OS_INLINE): Undefine before definition.
1778 (count_faces_sfnt): Insert EndianS16_BtoN to parse the header of
1779 FontAssociation table in FOND resource.
1780 (count_faces_scalable): Insert EndianS16_BtoN to parse the header
1781 and fontSize at each entry of FontAssociation table in FOND
1782 resource.
1783 (parse_fond): Insert EndianS16_BtoN and EndianS32_BtoN to parse
1784 ffStylOff of FamilyRecord header of FOND resource, the header,
1785 fontSize, fontID at each entry of FontAssociation table, and
1786 StyleMapping table.
1787 (count_faces): Call `HUnlock' after all FOND utilization.
Suzuki, Toshiya (鈴木俊哉)52311972006-06-22 02:34:27 +00001788
Suzuki, Toshiya (鈴木俊哉)817831f2006-06-15 09:05:41 +000017892006-06-08 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
1790
Werner Lemberg67d2f3a2006-06-16 06:50:36 +00001791 Public API of TrueTypeGX, OpenType, and classic kern table validator
1792 should return `FT_Err_Unimplemented_Feature' if validation service
1793 is unavailable (disabled in `modules.cfg'). It is originally
David Turner9fbfc6a2006-08-16 09:11:31 +00001794 suggested by David Turner, cf.
Suzuki, Toshiya (鈴木俊哉)817831f2006-06-15 09:05:41 +00001795 http://lists.gnu.org/archive/html/freetype-devel/2005-11/msg00078.html
1796
Werner Lemberg67d2f3a2006-06-16 06:50:36 +00001797 * src/base/ftgxval.c (FT_TrueTypeGX_Validate): Return
1798 FT_Err_Unimplemented_Feature if TrueTypeGX validation service is
1799 unavailable.
1800 (FT_ClassicKern_Validate): Return FT_Err_Unimplemented_Feature if
1801 classic kern table validation service is unavailable.
Suzuki, Toshiya (鈴木俊哉)817831f2006-06-15 09:05:41 +00001802
Werner Lemberg67d2f3a2006-06-16 06:50:36 +00001803 * src/base/ftotval.c (FT_OpenType_Validate): Return
1804 FT_Err_Unimplemented_Feature if OpenType validation service is
1805 unavailable.
Suzuki, Toshiya (鈴木俊哉)817831f2006-06-15 09:05:41 +00001806
Werner Lembergb10e45a2006-06-08 07:32:56 +000018072006-06-08 Werner Lemberg <wl@gnu.org>
1808
1809 * src/bdf/bdflib.c (bdf_load_font): Fix memory leaks in case of
1810 errors.
1811
David Turner5f1f7502006-06-07 05:11:50 +000018122006-06-07 David Turner <david@freetype.org>
1813
Werner Lemberg7d48cb02006-06-08 06:00:08 +00001814 * src/type1/t1afm.c (KERN_INDEX): Make it more robust.
1815 (T1_Read_Metrics): Fix memory leak which happened when the metrics
1816 file doesn't have kerning pairs. This fixes Savannah bug #16768.
David Turner5f1f7502006-06-07 05:11:50 +00001817
David Turner457b4a82006-06-06 08:14:14 +000018182006-06-06 David Turner <david@freetype.org>
1819
Werner Lemberg4836f952006-06-06 12:54:08 +00001820 Fix memory leak described in Savannah bug #16759.
David Turner457b4a82006-06-06 08:14:14 +00001821
Werner Lemberg4836f952006-06-06 12:54:08 +00001822 We change `ps_unicodes_init' so that it also takes a
1823 `free_glyph_name' callback to release the glyph names returned by
1824 `get_glyph_name'
1825
1826 * include/freetype/internal/services/svpscmap.h (PS_Glyph_NameFunc):
1827 Renamed to ...
1828 (PS_GetGlyphNameFunc): This.
1829 (PS_FreeGlyphNameFunc): New typedef.
1830 (PS_Unicodes_InitFunc): Add variable for PS_FreeGlyphNameFunc.
1831
1832 * src/cff/cffcmap.c (cff_sid_to_glyph_name): Use `TT_Face' for first
1833 argument.
1834 (cff_sid_free_glyph_name): New function.
1835 (cff_cmap_unicode_init): Updated.
1836
1837 * src/psaux/t1cmap.c (t1_cmap_unicode_init): Updated.
1838
1839 * src/psnames/psmodule.c (ps_unicodes_init): Add variable for
1840 PS_FreeGlyphNameFunc and use it.
David Turner457b4a82006-06-06 08:14:14 +00001841
1842
David Turner09717352006-06-04 14:33:08 +000018432006-06-04 David Turner <david@freetype.org>
1844
Werner Lembergd724f202006-06-04 15:17:41 +00001845 * src/base/ftutil.c (ft_mem_qrealloc): Fix the function to accept
1846 `item_size == 0' as well -- though this sounds weird, it can
Werner Lemberg4b2e83d2007-02-01 07:58:02 +00001847 theoretically happen. This fixes Savannah bug #16669.
David Turnerea4547c2006-06-04 14:50:57 +00001848
Werner Lembergd724f202006-06-04 15:17:41 +00001849 * src/pfr/pfrobjs.c (pfr_face_init): Fix the computation
1850 of `face->num_glyphs' which missed the last glyph, due to
1851 the offset-by-1 computation, since the PFR format doesn't
1852 guarantee that glyph index 0 corresponds to the `missing
1853 glyph. This fixes Savannah bug #16668.
David Turner09717352006-06-04 14:33:08 +00001854
Werner Lemberg33779662006-05-26 06:30:05 +000018552006-05-25 Werner Lemberg <wl@gnu.org>
1856
1857 * builds/unix/unix-cc.in (LINK_LIBRARY): Don't comment out
1858 `-no-undefined'. Reported by Christian Biesinger.
1859
Werner Lemberg24773d62006-05-20 08:53:13 +000018602006-05-19 Brian Weed <bw@imaginengine.com>
1861
1862 * builds/win32/visualc/freetype.dsp: Release libraries no longer
1863 have debug information, and debug libraries use `C7 compatible'
1864 debug info.
1865
Suzuki, Toshiya (鈴木俊哉)47200602006-05-19 10:48:42 +000018662006-05-19 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
1867
Werner Lemberga6523a62006-05-20 08:47:01 +00001868 Apply patch by Derek Clegg to fix two memory leaks in the MacOS
Werner Lembergd724f202006-06-04 15:17:41 +00001869 resource fork handler. This fixes Savannah bug #16631.
Suzuki, Toshiya (鈴木俊哉)de0a96c2006-05-19 23:16:12 +00001870
Werner Lemberga6523a62006-05-20 08:47:01 +00001871 * src/base/ftobjs.c (load_face_in_embedded_rfork): Replace
1872 `FT_Stream_Close' by `FT_Stream_Free' to fix memory leak.
Suzuki, Toshiya (鈴木俊哉)de0a96c2006-05-19 23:16:12 +00001873
1874 * src/base/ftrfrk.c (raccess_guess_linux_double_from_file_name):
Werner Lemberga6523a62006-05-20 08:47:01 +00001875 Replace `FT_Stream_Close' by `FT_Stream_Free' to fix memory leak.
Suzuki, Toshiya (鈴木俊哉)de0a96c2006-05-19 23:16:12 +00001876
18772006-05-19 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
1878
Suzuki, Toshiya (鈴木俊哉)8cfa8bd2006-05-19 22:11:50 +00001879 * build/unix/configure.raw: Add a fallback to disable Carbon
1880 dependency, if configured with no options on Mac OS X.
1881
18822006-05-19 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
1883
Suzuki, Toshiya (鈴木俊哉)47200602006-05-19 10:48:42 +00001884 * src/base/ftmac.c (open_face_from_buffer): Deallocate stream when
Werner Lemberga6523a62006-05-20 08:47:01 +00001885 its content cannot be parsed as supported font. This fixes
Suzuki, Toshiya (鈴木俊哉)47200602006-05-19 10:48:42 +00001886 the second part of Savannah bug #16590.
1887
Werner Lemberg545c4e52006-05-17 22:55:04 +000018882006-05-18 Werner Lemberg <wl@gnu.org>
1889
1890 * src/truetype/ttgload.c (TT_Load_Composite_Glyph)
1891 [FT_CONFIG_OPTION_BYTECODE_INTERPRETER]: Make it compilable again.
1892
David Turnerdc3ff312006-05-17 12:59:35 +000018932006-05-17 David Turner <david@freetype.org>
1894
Werner Lemberg545c4e52006-05-17 22:55:04 +00001895 This is a major patch used to drastically improve the performance of
1896 loading glyphs. This both speeds up loading the glyph vectors
1897 themselves and the auto-fitter module.
David Turner281679d2006-05-17 13:34:21 +00001898
Werner Lemberg545c4e52006-05-17 22:55:04 +00001899 We now use inline assembler code with GCC to implement `FT_MulFix',
1900 which is probably the most important function related to the
1901 engine's performance.
David Turner281679d2006-05-17 13:34:21 +00001902
Werner Lemberg545c4e52006-05-17 22:55:04 +00001903 The resulting speed-up is about 25%.
David Turner281679d2006-05-17 13:34:21 +00001904
1905
Werner Lemberg545c4e52006-05-17 22:55:04 +00001906 * include/freetype/internal/tttypes.h (TT_LoaderRec): Add fields
1907 `cursor' and `limit'.
1908
1909 * src/autofit/afangles.c (af_corner_is_flat, af_corner_orientation):
1910 New functions.
1911 (AF_ATAN_BITS, af_arctan, af_angle_atan): Comment out.
1912 [TEST]: Remove.
1913
1914 * src/autofit/afcjk.c (AF_Script_UniRangeRec): Comment out test
1915 code.
1916
1917 * src/autofit/afhints.c (af_axis_hints_new_segment): Don't call
1918 `FT_ZERO'
1919 (af_direction_compute, af_glyph_hints_compute_inflections): Rewritten.
1920 (af_glyph_hints_reload: Rewrite recognition of weak points.
1921
1922 * src/autofit/aflatin.c (af_latin_hints_compute_segments): Move
1923 constant values out of the loops.
1924
1925 * src/autofit/aftypes.h: Updated.
1926
1927 * src/base/ftcalc.c (FT_MulFix): Use inline assembler code.
1928
1929 * src/base/ftoutln.c (FT_Outline_Get_Orientation): Use vector
1930 product to get orientation.
1931
1932 * src/gzip/ftgzip.c (ft_get_uncompressed_size): New function.
1933 (FT_Stream_OpenGzip): Use it to handle small files directly in
1934 memory.
1935
1936 * src/psaux/psconv.c (PS_Conv_ASCIIHexDecode, PS_ConvEexecDecode):
1937 Improve performance.
1938
1939 * src/truetype/ttgload.c (TT_Access_Glyph_Frame): Set `cursor' and
1940 `limit'.
1941
1942 (TT_Load_Glyph_Header, TT_Load_Simple_Glyph,
1943 TT_Load_Composite_Glyph): Updated. Add threshold to protect against
1944 exceedingly large values of number of contours. Speed up by
1945 reducing the number of loops.
1946
1947 * src/type1/t1gload.c (T1_Load_Glyph): Don't apply unit matrix.
1948
1949
1950 * src/cache/ftccmap.c (FTC_CMapCache_Lookup): Change the threshold
1951 used to detect rogue clients from 4 to 16. This is to prevent some
1952 segmentation faults with fonts like `KozMinProVI-Regular.otf' which
1953 comes from the Japanese Adobe Reader Asian Font pack.
David Turnerdc3ff312006-05-17 12:59:35 +00001954
Werner Lembergde2d90a2006-05-17 08:54:30 +000019552007-05-17 Werner Lemberg <wl@gnu.org>
1956
1957 * src/cff/cffload.c (cff_font_done): Deallocate subfont array. This
David Turner281679d2006-05-17 13:34:21 +00001958 fixes the first part of Savannah bug #16590.
Werner Lembergde2d90a2006-05-17 08:54:30 +00001959
19602006-05-16 Werner Lemberg <wl@gnu.org>
1961
1962 * docs/PROBLEMS: Updated icl issues.
1963
Werner Lemberg8e6c56f2005-10-18 06:09:13 +00001964----------------------------------------------------------------------------
1965
Werner Lemberg42b63b22007-01-21 21:01:33 +00001966Copyright 2006, 2007 by
Werner Lemberg8e6c56f2005-10-18 06:09:13 +00001967David Turner, Robert Wilhelm, and Werner Lemberg.
1968
1969This file is part of the FreeType project, and may only be used, modified,
1970and distributed under the terms of the FreeType project license,
1971LICENSE.TXT. By continuing to use, modify, or distribute this file you
1972indicate that you have read the license and understand and accept it
1973fully.
1974
1975
1976Local Variables:
1977version-control: never
Werner Lemberg4e03fe72006-04-29 06:20:09 +00001978coding: utf-8
Werner Lemberg8e6c56f2005-10-18 06:09:13 +00001979End: