"SfR Fresh" - the SfR Freeware/Shareware Archive 
Member "freetype-2.3.7/ChangeLog" of archive freetype-2.3.7.tar.gz:
As a special service "SfR Fresh" has tried to format the requested source page into HTML format using source code syntax highlighting with prefixed line numbers.
Alternatively you can here view or download the uninterpreted source code file.
That can be also achieved for any archive member file by clicking within an archive contents listing on the first character of the file(path) respectively on the according byte size field.
1 2008-06-29 Werner Lemberg <wl@gnu.org>
2
3 * Version 2.3.7 released.
4 =========================
5
6
7 Tag sources with `VER-2-3-7'.
8
9 * docs/CHANGES, docs/VERSION.DLL: Update documentation and bump
10 version number to 2.3.7.
11
12 * README, Jamfile (RefDoc), builds/win32/visualc/index.html,
13 builds/win32/visualc/freetype.dsp,
14 builds/win32/visualc/freetype.vcproj,
15 builds/win32/visualce/index.html,
16 builds/win32/visualce/freetype.dsp,
17 builds/win32/visualce/freetype.vcproj: s/2.3.6/2.3.7/, s/236/237/.
18
19 * include/freetype/freetype.h (FREETYPE_PATCH): Set to 7.
20
21 * builds/unix/configure.raw (version_info): Set to 9:18:3.
22
23 * docs/release: Updated.
24
25 2008-06-28 Werner Lemberg <wl@gnu.org>
26
27 * src/ftglyph.c (FT_Matrix_Multiply, FT_Matrix_Invert): Move to...
28 * src/ftcalc.c: Here. This fixes Savannah bug #23729.
29
30 2008-06-27 Werner Lemberg <wl@gnu.org>
31
32 * src/raster/ftraster.c (Vertical_Sweep_Drop, Horizontal_Sweep_Drop,
33 Horizontal_Gray_Sweep_Drop): Test for intersections which
34 degenerate to a single point can be ignored; this has been confirmed
35 by Greg Hitchcock from Microsoft. (This was commented out code.)
36
37 2008-06-26 Werner Lemberg <wl@gnu.org>
38
39 Improve navigation in API reference.
40
41 * src/tools/docmaker/tohtml.py (html_header_3): Renamed to...
42 (html_header_6): This.
43 (html_header_3, html_header_3i, html_header_4, html_header_5,
44 html_header_5t): New strings.
45 (toc_footer_start, toc_footer_end): New strings.
46 (HtmlFormatter::html_header): Updated.
47 (HtmlFormatter::html_index_header, HtmlFormatter::html_toc_header):
48 New strings.
49 (HtmlFormatter::index_enter): Use `html_index_header'.
50 (HtmlFormatter::index_exit): Print `html_footer'.
51 (HtmlFormatter::toc_enter): Use `html_toc_header'.
52 (HtmlFormatter::toc_exit): Print proper footer.
53
54 Convert ~ to non-breakable space.
55
56 * src/tools/docmaker/tohtml.py (make_html_para): Implement it.
57 Update header files accordingly.
58
59 2008-06-24 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
60
61 * builds/unix/configure.raw: Check type `ResourceIndex' explicitly
62 and define HAVE_TYPE_RESOURCE_INDEX if it is defined. Mac OS X 10.5
63 bundles 10.4u SDK with MAC_OS_X_VERSION_10_5 macro but without
64 ResourceIndex type definition. The macro does not inform the type
65 availability.
66 * src/base/ftmac.c: More parentheses are inserted to clarify the
67 conditionals to disable legacy APIs in `10.5 and later' cases. If
68 HAVE_TYPE_RESOURCE_INDEX is not defined, ResourceIndex is defined.
69
70 2008-06-24 Werner Lemberg <wl@gnu.org>
71
72 * src/truetype/ttinterp. (Ins_SCANTYPE): Don't check rendering mode.
73
74 * src/raster/ftraster.c (Render_Glyph, Render_Gray_Glyph,
75 Draw_Sweep): No-dropout mode is value 2, not value 0.
76 (Draw_Sweep): Really skip dropout handling for no-dropout mode.
77
78 2008-06-24 Werner Lemberg <wl@gnu.org>
79
80 * src/psaux/psobjs.c (t1_builder_close_contour): Don't add contour
81 if it consists of one point only. Based on a patch from Savannah
82 bug #23683 (from John Tytgat).
83
84 2008-06-22 Werner Lemberg <wl@gnu.org>
85
86 * src/truetype/ttgload.c (TT_Load_Glyph): Protect bytecode stuff
87 with IS_HINTED.
88
89 * docs/CHANGES: Updated.
90
91 2008-06-22 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
92
93 * builds/unix/configure.raw: If CFLAGS has `-isysroot XXX' option
94 but LDFLAGS does not, import it to LDFLAGS. The option is used to
95 specify non-default SDK on Mac OS X (e.g., universal binary SDK for
96 Mac OS X 10.4 on PowerPC platform). Although Apple TechNote 2137
97 recommends to add the option only to CFLAGS, LDFLAGS should include
98 it because libfreetype.la is built with -no-undefined. This fixes a
99 bug reported by Ryan Schmidt in MacPorts,
100 http://trac.macports.org/ticket/15331.
101
102 2008-06-21 Werner Lemberg <wl@gnu.org>
103
104 Enable access to the various dropout rules of the B&W rasterizer.
105 Pass dropout rules from the TT bytecode interpreter to the
106 rasterizer.
107
108 * include/freetype/ftimage.h (FT_OUTLINE_SMART_DROPOUTS,
109 FT_OUTLINE_EXCLUDE_STUBS): New flags for for FT_Outline.
110
111 * src/raster/ftraster.c (Vertical_Sweep_Drop, Horizontal_Sweep_Drop,
112 Horizontal_Gray_Sweep_Drop): Use same mode numbers as given in the
113 OpenType specification.
114 Fix mode 4 computation.
115 (Render_Glyph, Render_Gray_Glyph): Handle new outline flags.
116
117 * src/truetype/ttgload.c (TT_Load_Glyph) Convert scan conversion
118 mode to FT_OUTLINE_XXX flags.
119
120 * src/truetype/ttinterp.c (Ins_SCANCTRL): Enable ppem check.
121
122 2008-06-19 Werner Lemberg <wl@gnu.org>
123
124 * src/cff/cffobjs.c (cff_face_init): Compute final
125 `dict->units_per_em' value before assigning it to
126 `cffface->units_per_EM'. Otherwise, CFFs without subfonts are
127 scaled incorrectly if the font matrix is non-standard. This fixes
128 Savannah bug #23630.
129
130 * docs/CHANGES: Updated.
131
132 2008-06-19 Werner Lemberg <wl@gnu.org>
133
134 * src/type/t1objs.c (T1_Face_Init): Slightly improve algorithm fix
135 from 2008-06-19.
136
137 2008-06-18 Werner Lemberg <wl@gnu.org>
138
139 * src/type/t1objs.c (T1_Face_Init): Fix change from 2008-03-21.
140 Reported by Peter Weilbacher <mozilla@weilbacher.org>.
141
142 * docs/CHANGES: Updated.
143
144 2008-06-15 George Williams <gww@silcom.com>
145
146 * src/otvalid/otvgpos.c (otv_MarkBasePos_validate): Set
147 `valid->extra2' to 1. This is undocumented in the OpenType 1.5
148 specification.
149
150 2008-06-15 Werner Lemberg <wl@gnu.org>
151
152 * src/base/ftcalc.c (FT_MulFix) <asm>: Protect registers correctly
153 from clobbering. Patch from Savannah bug report #23556.
154
155 * docs/CHANGES: Document it.
156
157 2008-06-10 Werner Lemberg <wl@gnu.org>
158
159 * autogen.sh: Add option `--install' to libtoolize.
160
161 2008-06-10 Werner Lemberg <wl@gnu.org>
162
163 * Version 2.3.6 released.
164 =========================
165
166
167 Tag sources with `VER-2-3-6'.
168
169 * docs/CHANGES, docs/VERSION.DLL: Update documentation and bump
170 version number to 2.3.6.
171
172 * README, Jamfile (RefDoc), builds/win32/visualc/index.html,
173 builds/win32/visualc/freetype.dsp,
174 builds/win32/visualc/freetype.vcproj,
175 builds/win32/visualce/index.html,
176 builds/win32/visualce/freetype.dsp,
177 builds/win32/visualce/freetype.vcproj: s/2.3.5/2.3.6/, s/235/236/.
178
179 * include/freetype/freetype.h (FREETYPE_PATCH): Set to 6.
180
181 * builds/unix/configure.raw (version_info): Set to 9:17:3.
182
183
184 * include/freetype/internal/psaux.h (T1_BuilderRec): Remove `scale_x'
185 and `scale_y'.
186 * src/cff/cffgload.h (CFF_Builder): Remove `scale_x' and `scale_y'.
187
188
189 * src/cff/cffparse.c: Include FT_INTERNAL_DEBUG_H.
190 * src/cff/cffobjs.h: Include FT_INTERNAL_POSTSCRIPT_HINTS_H.
191
192 2008-06-10 Werner Lemberg <wl@gnu.org>
193
194 * src/base/ftobjs.c (open_face): Check `clazz->init_face' and
195 `clazz->done_face'.
196
197 2008-06-09 VaDiM <s_sliva@rambler.ru>
198
199 Support debugging on WinCE. From Savannah patch #6536; this fixes
200 bug #23497.
201
202 * builds/win32/ftdebug.c (OutputDebugStringEx): New function/macro
203 as a replacement for OutputDebugStringA (which WinCE doesn't have).
204 Update all callers.
205 (ft_debug_init) [_WIN32_CE]: WinCE apparently doesn't have
206 environment variables.
207
208 2008-06-09 Werner Lemberg <wl@gnu.org>
209
210 * README.CVS: Updated.
211
212 * builds/unix/configure.raw, builds/unix/freetype-config.in: Updated
213 for newer versions of autoconf and friends.
214
215 2008-06-08 Werner Lemberg <wl@gnu.org>
216
217 * src/type1/t1parse.h (T1_ParserRec): Make `base_len' and
218 `private_len' unsigned.
219
220 * src/type1/t1parse.c (read_pfb_tag): Make `asize' unsigned and read
221 it as such.
222 (T1_New_Parser, T1_Get_Private_Dict): Make `size' unsigned.
223
224
225 * src/base/ftstream.c (FT_Stream_Skip): Reject negative values.
226
227
228 * src/type1/t1load.c (parse_blend_design_positions): Check `n_axis'
229 for sane value.
230 Fix typo.
231
232
233 * src/psaux/psobjs.c (ps_table_add): Check `idx' correctly.
234
235
236 * src/truetype/ttinterp (Ins_SHC): Use BOUNDS() to check
237 `last_point'.
238
239
240 * src/sfnt/ttload.c (tt_face_load_max_profile): Limit
241 `maxTwilightPoints'.
242
243 2008-06-06 Werner Lemberg <wl@gnu.org>
244
245 * src/truetype/ttinterp.c (Ins_IP): Handle case `org_dist == 0'
246 correctly. This fixes glyphs `t' and `h' of Arial Narrow at 12ppem.
247
248 2008-06-03 Werner Lemberg <wl@gnu.org>
249
250 * include/freetype/ftcache.h (FTC_FaceID): Change type back to
251 FT_Pointer. Reported by Ian Britten <britten@caris.com>.
252
253 2008-06-02 Werner Lemberg <wl@gnu.org>
254
255 Emit header info for defined FreeType objects in reference.
256
257 * src/tools/docmaker/content.py (re_header_macro): New regexp.
258 (ContentProcessor::__init__): Initialize new dictionary `headers'.
259 (DocBlock::__init__): Collect macro header definitions.
260
261 * src/tools/docmaker/tohtml.py (header_location_header,
262 header_location_footer): New strings.
263 (HtmlFormatter::__init__): Pass `headers' dictionary.
264 (HtmlFormatter::print_html_field): Don't emit paragraph tags.
265 (HtmlFormatter::print_html_field_list): Emit empty paragraph.
266 (HtmlFormatter::block_enter): Emit header info.
267
268 2008-06-01 Werner Lemberg <wl@gnu.org>
269
270 * include/freetype/config/ftheader.h (FT_UNPATENTED_HINTING_H,
271 FT_INCREMENTAL_H): Added.
272
273 2008-05-28 Werner Lemberg <wl@gnu.org>
274
275 * src/tools/docmaker/sources.py (SourceBlock::__init__): While
276 looking for markup tags, return immediately as soon a single one is
277 found.
278
279 2008-05-28 Werner Lemberg <wl@gnu.org>
280
281 * src/truetype/ttinterp.c (Ins_MD): The MD instruction also uses
282 original, unscaled input values. Confirmed by Greg Hitchcock from
283 Microsoft.
284
285 2008-05-27 Werner Lemberg <wl@gnu.org>
286
287 * src/tools/docmaker/tohtml.py (block_footer_start,
288 block_footer_middle): Beautify output.
289
290 2008-05-25 Werner Lemberg <wl@gnu.org>
291
292 * src/raster/ftraster.c (fc_black_render): Return 0 when we are
293 trying to render into a zero-width/height bitmap, not an error code.
294
295 * src/truetype/ttgload.c (load_truetype_glyph): Move initialization
296 of the graphics state for subglyphs to...
297 (TT_Hint_Glyph): This function.
298 Hinting instructions for a composite glyph apparently refer to the
299 just hinted subglyphs, not the unhinted, unscaled outline. This
300 seems to fix Savannah bugs #20973 and (at least partially) #23310.
301
302 2008-05-20 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
303
304 * src/base/ftmac.c (FT_New_Face_From_Suitcase): Check if valid
305 `aface' is returned by FT_New_Face_From_FOND(). The patch was
306 proposed by an anonymous reporter of Savannah bug #23204.
307
308 2008-05-18 Werner Lemberg <wl@gnu.org>
309
310 * src/pshinter/pshalgo.c (ps_hints_apply): Reset scale values after
311 correction for pixel boundary. Without this patch, the effect can
312 be cumulative under certain circumstances, making glyphs taller and
313 taller after each call. This fixes Savannah bug #19976.
314
315 2008-05-18 Werner Lemberg <wl@gnu.org>
316
317 * src/base/ftdebug.c (FT_Message, FT_Panic): Send output to stderr.
318 This fixes Savannah bug #23280.
319
320 * docs/CHANGES: Updated.
321
322 2008-05-18 David Turner <david@freetype.org>
323
324 * src/psnames/psmodule.c (ft_wgl_extra_unicodes,
325 ft_wgl_extra_glyph_names, ft_wgl_extra_glyph_name_offsets,
326 ps_check_wgl_name, ps_check_wgl_unicode): Use `static' to make
327 declarations non-global.
328
329 * src/type1/t1load.c: Add missing comment.
330
331 2008-05-17 Sam Hocevar <samh>
332
333 * src/truetype/ttgload.c (TT_Load_Simple_Glyph): Handle zero-contour
334 glyphs correctly. Patch from Savannah bug #23277.
335
336 2008-05-16 Werner Lemberg <wl@gnu.org>
337
338 * docs/CHANGES: Updated.
339
340 2008-05-16 Sergey Tolstov <stolstov@esri.com>
341
342 Improve support for WGL4 encoded fonts.
343
344 * src/psnames/psmodule.c (WGL_EXTRA_LIST_SIZE): New macro.
345 (ft_wgl_extra_unicodes, ft_wgl_extra_glyph_names,
346 ft_wgl_extra_glyph_name_offsets): New arrays.
347 (ps_check_wgl_name, ps_check_wgl_unicode): New functions.
348 (ps_unicodes_init): Use them to add additional Unicode mappings.
349
350 2008-05-15 Werner Lemberg <wl@gnu.org>
351
352 * src/psaux/t1decode.c (t1_decoder_parse_charstrings)
353 <op_closepath>: `closepath' without a path is a no-op, not an error
354 (cf. the PS reference manual).
355
356 Reported by Martin McBride.
357
358 2008-05-15 Werner Lemberg <wl@gnu.org>
359
360 * builds/toplevel.mk (CONFIG_GUESS, CONFIG_SUB): Updated.
361
362 2008-05-15 Werner Lemberg <wl@gnu.org>
363
364 * src/type1/t1load.c (parse_subrs): Accept fonts with a subrs array
365 which contains a single but empty entry. This is technically
366 invalid (since it must end with `return'), but...
367
368 Reported by Martin McBride.
369
370 2008-05-14 Werner Lemberg <wl@gnu.org>
371
372 Finish fix of scaling bug of CID-keyed CFF subfonts.
373
374 * include/freetype/internal/ftcalc.h, src/base/ftcalc.c
375 (FT_Matrix_Multiply_Scaled, FT_Vector_Transform_Scaled): New
376 functions.
377
378 * src/cff/cffobjs.h (CFF_Internal): New struct. It is used to
379 provide global hinting data for both the top-font and all subfonts
380 (with proper scaling).
381
382 * src/cff/cffobjs.c (cff_make_private_dict): New function, using
383 code from `cff_size_init'.
384 (cff_size_init, cff_size_done, cff_size_select, cff_size_request):
385 Use CFF_Internal and handle subfonts.
386 (cff_face_init): Handle top-dict and subfont matrices correctly;
387 apply some heuristic in case of unlikely matrix concatenation
388 results. This has been discussed with people from Adobe (thanks
389 goes mainly to David Lemon) who confirm that the CFF specs are fuzzy
390 and not correct.
391
392 * src/cff/cffgload.h (cff_decoder_prepare): Add `size' argument.
393
394 * src/cff/cffgload.c (cff_builder_init): Updated.
395 (cff_decoder_prepare): Handle hints globals for subfonts.
396 Update all callers.
397 (cff_slot_load): Handling scaling of subfonts properly.
398
399 * src/cff/cffparse.c (cff_parse_fixed_dynamic): New function.
400 (cff_parse_font_matrix): Use it.
401
402 * src/cff/cfftypes.h (CFF_FontDictRec): Make `units_per_em'
403 FT_ULong.
404
405 * docs/CHANGES: Document it.
406
407 2008-05-13 Werner Lemberg <wl@gnu.org>
408
409 * src/winfonts/winfnt.c (fnt_face_get_dll_font, FNT_Face_Init):
410 Handle case `face_index < 0'.
411 * docs/CHANGES: Document it.
412
413 2008-05-04 Werner Lemberg <wl@gnu.org>
414
415 First steps to fix the scaling bug of CID-keyed CFF subfonts,
416 reported by Ding Li on 2008/03/28 on freetype-devel.
417
418 * src/base/cff/cffparse.c (power_tens): New array.
419 (cff_parse_real): Rewritten to introduce a fourth parameter which
420 returns the `scaling' of the real number so that we have no
421 precision loss. This is not used yet.
422 Update all callers.
423 (cff_parse_fixed_thousand): Replace with...
424 (cff_parse_fixed_scaled): This function. Update all callers.
425
426 2008-05-03 Werner Lemberg <wl@gnu.org>
427
428 * src/base/ftobjs.c (FT_Load_Glyph): Call the auto-hinter without
429 transformation since it recursively calls FT_Load_Glyph. This fixes
430 Savannah bug #23143.
431
432 2008-04-26 Werner Lemberg <wl@gnu.org>
433
434 * include/freetype/internal/psaux.h (T1_BuilderRec): Mark `scale_x'
435 and `scale_y' as obsolete since they aren't used.
436 * src/psaux/psobjs.c (t1_builder_init): Updated.
437
438 * src/cff/cffgload.h (CFF_Builder): Mark `scale_x' and `scale_y' as
439 obsolete since they aren't used.
440 * src/cff/cffgload.c (cff_builder_init): Updated.
441
442 2008-04-14 Werner Lemberg <wl@gnu.org>
443
444 * src/pcf/pcfdrivr.c (PCF_Face_Init): Protect call to
445 `FT_Stream_OpenLZW' with `FT_CONFIG_OPTION_USE_LZ'. From Savannah
446 bug #22909.
447
448 2008-04-13 Werner Lemberg <wl@gnu.org>
449
450 * src/psaux/psconv.c (PS_Conv_ToFixed): Increase precision if
451 integer part is zero.
452
453 2008-04-01 Werner Lemberg <wl@gnu.org>
454
455 Fix compilation with g++ 4.1 (with both `single' and `multi'
456 targets).
457
458 * src/base/ftobjs.c (FT_Open_Face): Don't define a variable in block
459 which is crossed by a `goto'.
460
461 * src/otvalid/otvalid.h (otv_MATH_validate): Add prototype.
462
463 2008-03-31 Werner Lemberg <wl@gnu.org>
464
465 Fix support for subsetted CID-keyed CFFs.
466
467 * include/freetype/freetype.h (FT_FACE_FLAG_CID_KEYED,
468 FT_IS_CID_KEYED): New macros.
469
470 * src/cff/cffobjs.c (cff_face_init): Set number of glyphs to the
471 maximum CID value in CID-keyed CFFs.
472 Handle FT_FACE_FLAG_CID_KEYED flag.
473
474 * docs/CHANGES: Document it.
475
476
477 Fix CFF font matrix calculation and improve precision.
478
479 * src/cff/cffparse.c (cff_parse_real): Increase precision if integer
480 part is zero.
481 (cff_parse_font_matrix): Simplify computation of `units_per_em';
482 this prevents overflow also.
483
484
485 Support FT_Get_CID_Registry_Ordering_Supplement for PS CID fonts.
486
487 * src/cid/cidriver.c: Include FT_SERVICE_CID_H.
488 (cid_get_ros): New function.
489 (cid_service_cid_info): New service structure.
490 (cid_services): Register it.
491
492 2008-03-23 Werner Lemberg <wl@gnu.org>
493
494 Adjustments for Visual C++ 8.0, as reported by Rainer Deyke.
495
496 * builds/compiler/visualc.mk (CFLAGS): Remove /W5.
497 (ANSIFLAGS): Add _CRT_SECURE_NO_DEPRECATE.
498
499 2008-03-21 Laurence Darby <ldarby>
500
501 * src/type1/t1objs.c (T1_Face_Init): Use `/Weight'. Patch from
502 Savannah bug #22675.
503
504 2008-03-13 Derek Clegg <dclegg@apple.com>
505
506 * src/truetype/ttgxvar.c (TT_Get_MM_Var): Fix named style loop.
507 Patch from Savannah bug #22541.
508
509 2008-03-03 Masatoshi Kimura <VYV03354@nifty.ne.jp>
510
511 * src/sfnt/ttcmap.c (tt_cmap14_char_map_nondef_binary,
512 tt_cmap14_find_variant): Return correct value.
513 (tt_cmap14_variant_chars): Fix check for `di'.
514
515 2008-02-29 Wermer Lemberg <wl@gnu.org>
516
517 * docs/CHANGES: Updated.
518
519 2008-02-29 Wolf
520
521 Add build support for symbian platform. From Savannah bug #22440.
522
523 * builds/symbian/*: New files.
524
525 2008-02-21 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
526
527 * src/base/ftmac.c (parse_fond): Fix a bug of PostScript font name
528 synthesis. For any face of a specified FOND, always the name for
529 the first face was used. Except of a FOND that refers multiple
530 Type1 font files, wrong synthesized font names are not used at all,
531 so this is an invisible bug. A few limit checks are added too.
532
533 * builds/mac/ftmac.c: Ditto.
534
535 2008-02-21 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
536
537 * builds/unix/configure.raw: Split compiler option to link Carbon
538 frameworks to one option for CoreServices framework and another
539 option for ApplicationServices framework. The split options can be
540 managed by GNU libtool to avoid unrequired duplication when FreeType
541 is linked with other applications. Suggested by Daniel Macks,
542 Savannah bug #22366.
543
544 2008-02-18 Victor Stinner <victor.stinner@haypocalc.com>
545
546 * src/truetype/ttinterp.c (Ins_IUP): Check number of points. Fix
547 from Savannah bug #22356.
548
549 2008-02-17 Jonathan Blow <jon@number-none.com>
550
551 * src/autofit/afloader.c (af_loader_load_g, af_loader_load_glyph):
552 Check for valid callback pointers.
553
554 2008-02-15 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
555
556 * src/base/ftmac.c (FT_New_Face_From_SFNT): Check the sfnt resource
557 handle by its value instead of ResError(), fix provided by Deron
558 Kazmaier. According to the Resource Manager Reference,
559 GetResource(), Get1Resource(), GetNamedResource(),
560 Get1NamedResource() and RGetResource() set noErr but return NULL
561 handle when they can not find the requested resource. These
562 functions never return undefined values, so it is sufficient to
563 check if the handle is not NULL.
564
565 * builds/mac/ftmac.c (FT_New_Face_From_SFNT): Ditto.
566
567 2008-02-14 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
568
569 * src/base/ftbase.c: <ftmac.c> is replaced by "ftmac.c" as other
570 inclusion styles. Now it always includes src/base/ftmac.c;
571 builds/mac/ftmac.c is never included in any configuration.
572
573 * builds/unix/configure.raw: Print warning if configure is executed
574 with options to specify Carbon functionalities explicitly.
575
576 * docs/INSTALL.MAC: Note that legacy builds/mac/ftmac.c is not
577 included automatically and manual replacement is required.
578
579 2008-02-11 Werner Lemberg <wl@gnu.org>
580
581 * builds/modules.mk (CLOSE_MODULE, REMOVE_MODULE), builds/detect.mk
582 (dos_setup), builds/freetype.mk (clean_project_dos,
583 distclean_project_dos): Don't use \ but $(SEP). Reported by Duncan
584 Murdoch.
585
586 2008-01-18 Sylvain Pasche <sylvain.pasche@gmail.com>
587
588 * src/base/ftlcdfil.c (_ft_lcd_filter_legacy): Updated comment to
589 mention intra-pixel algorithm.
590
591 * include/freetype/freetype.h (FT_Render_Mode): Mention that
592 FT_Library_SetLcdFilter can be used to reduce fringes.
593
594 2008-01-16 Werner Lemberg <wl@gnu.org>
595
596 * src/raster/ftraster.c (ft_black_render): Check `outline' before
597 using it. Reported by Allan Yang.
598
599 2008-01-12 Werner Lemberg <wl@gnu.org>
600
601 * src/raster/ftraster.c (FT_CONFIG_OPTION_5_GRAY_LEVELS): Remove.
602
603 2008-01-12 Allan Yang, Jian Hua - SH <Allan.Yang@fmc.fujitsu.com>
604
605 * src/raster/ftraster.c (ft_black_init)
606 [FT_RASTER_OPTION_ANTI_ALIASING]: Fix compilation.
607
608 2008-01-10 Werner Lemberg <wl@gnu.org>
609
610 * src/truetype/ttgload.c (load_truetype_glyph): Handle the case
611 where the number of contours in a simple glyph is zero (and which
612 does contain an entry in the `glyf' table). This fixes Savannah bug
613 #21990.
614
615 2008-01-04 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
616
617 Formatting suggested by Sean McBride.
618
619 * builds/mac/ftmac.c: Formatting (tab expanded).
620 * src/autofit/afindic.c: Ditto.
621 * src/base/ftcid.c: Ditto.
622 * src/base/ftmac.c: Ditto.
623
624 2007-12-30 Werner Lemberg <wl@gnu.org>
625
626 * src/smooth/ftgrays.c (gray_raster_render): Check `outline'
627 correctly.
628
629 2007-12-21 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
630
631 Improvement of POSIX resource-fork accessor to load unsorted
632 references in a resource. In HelveLTMM (resource-fork PostScript
633 Type1 font bundled with Mac OS X since 10.3.x), the appearance order
634 of PFB chunks is not sorted; sorting the chunks by reference IDs is
635 required.
636
637 * include/freetype/internal/ftrfork.h (FT_RFork_Ref): New structure
638 type to store a pair of reference ID and offset to the chunk.
639
640 * src/base/ftrfork.c (ft_raccess_sort_ref_by_id): New function to
641 sort FT_RFork_Ref by their reference IDs.
642
643 (FT_Raccess_Get_DataOffsets): Returns an array of offsets that is
644 sorted by reference ID.
645
646 2007-12-14 Werner Lemberg <wl@gnu.org>
647
648 * src/cff/cffparse.c (cff_parse_real): Don't apply `power_ten'
649 division too early; otherwise the most significant digit(s) of the
650 final result are lost as the value is truncated to an integer. This
651 fixes Savannah bug #21794 (where the patch has been posted too).
652
653 2007-12-06 Fix <4d876b82@gmail.com>
654
655 Pass options from one configure script to another as-is (not
656 expanded). This is needed for options like
657 --includedir='${prefix}/include'.
658
659 * builds/unix/detect.mk, configure: Prevent argument expansion in
660 call to the (real) `configure' script.
661
662 2007-12-06 Werner Lemberg <wl@gnu.org>
663
664 * src/truetype/ttgload.c (load_truetype_glyph): Fix compilation if
665 TT_USE_BYTECODE_INTERPRETER isn't defined.
666
667 2007-12-06 Werner Lemberg <wl@gnu.org>
668
669 There exist CFFs which contain opcodes for the Type 1 operators
670 `hsbw' and `closepath' which are both invalid in Type 2 charstrings.
671 However, it doesn't harm to support them.
672
673 * src/cff/cffgload.c (CFF_Operator): Add `cff_op_hsbw' and
674 `cff_op_closepath.'
675 (cff_argument_counts): Ditto.
676
677 (cff_decoder_parse_charstrings): Handle Type 1 opcodes 9 (closepath)
678 and 13 (hsbw) which are invalid in Type 2 charstrings.
679
680 2007-12-06 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
681
682 * src/base/ftrfork.c (raccess_guess_darwin_newvfs): New function to
683 support new pathname syntax `..namedfork/rsrc' to access a resource
684 fork on Mac OS X. The legacy syntax `/rsrc' does not work on
685 case-sensitive HFS+.
686 (raccess_guess_darwin_hfsplus): Fix a bug in the calculation of
687 buffer size to store a pathname.
688 * include/freetype/internal/ftrfork.h: Increment the number of
689 resource fork guessing rule.
690
691 2007-12-06 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
692
693 * builds/unix/configure.raw: Improve the compile tests to search
694 Carbon functions.
695 * builds/mac/ftmac.c: Import fixes for Carbon incompatibilities
696 proposed by Sean McBride from src/base/ftmac.c (see 2007-11-16).
697
698 2007-12-06 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
699
700 The documents and comments for Mac OS X are improved by Sean
701 McBride.
702
703 * src/base/ftmac.c: Fix a comment.
704 * include/freetype/ftmac.h: Ditto.
705 * docs/INSTALL.MAC: Improve English and add comment on lowest
706 system version specified by MACOSX_DEPLOYMENT_TARGET.
707
708 2007-12-04 Werner Lemberg <wl@gnu.org>
709
710 * src/cff/cffload.c (cff_subfont_load): Don't use logical OR to
711 concatenate error codes.
712 * src/sfnt/ttsbit.c (Load_SBit_Range): Ditto.
713
714 2007-12-04 Graham Asher <graham.asher@btinternet.com>
715
716 * src/truetype/ttobjs.c (tt_face_init): Don't use logical OR to
717 concatenate error codes.
718
719 2007-12-04 Sean McBride <sean@rogue-research.com>
720
721 * src/pfr/pfrgload.c (pfr_glyph_load_compound): Remove compiler
722 warning.
723
724 2007-11-20 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
725
726 Fix MacOS legacy font support by Masatake Yamato on Mac OS X. It is
727 not working since 2.3.5. In FT_Open_New(), if FT_New_Stream()
728 cannot mmap() the specified file and cannot seek to head of the
729 specified file, it returns NULL stream and FT_Open_New() returns the
730 error immediately. On MacOS, most legacy MacOS fonts fall into such
731 a scenario because their data forks are zero-sized and cannot be
732 sought. To proceed to guessing of resource fork fonts, the
733 functions for legacy MacOS font must properly handle the NULL stream
734 returned by FT_New_Stream().
735
736 * src/base/ftobjs.c (IsMacBinary): Return error
737 FT_Err_Invalid_Stream_Operation immediately when NULL stream is
738 passed.
739 (FT_Open_Face): Even when FT_New_Stream() returns an error, proceed
740 to fallback. Originally, legacy MacOS font is tested in the cases
741 of FT_Err_Invalid_Stream_Operation (occurs when data fork is empty)
742 or FT_Err_Unknown_File_Format (occurs when AppleSingle header or
743 .dfont header is combined). Now the case of
744 FT_Err_Cannot_Open_Stream is included.
745
746 * src/base/ftrfork.c (FT_Raccess_Guess): When passed stream is NULL,
747 skip FT_Stream_Seek(), which seeks to the head of stream, and
748 proceed to unit testing of raccess_guess_XXX(). FT_Stream_Seek()
749 for a NULL stream causes a Bus error on Mac OS X.
750 (raccess_guess_apple_double): Return FT_Err_Cannot_Open_Stream
751 immediately if passed stream is NULL.
752 (raccess_guess_apple_single): Ditto.
753
754 2007-11-16 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
755
756 Fix for Carbon incompatibilities since Mac OS X 10.5,
757 proposed by Sean McBride.
758
759 * doc/INSTALL.MAC: Comment on MACOSX_DEPLOYMENT_TARGET.
760
761 * include/freetype/ftmac.h: Deprecate FT_New_Face_From_FOND and
762 FT_GetFilePath_From_Mac_ATS_Name. Since Mac OS X 10.5, calling
763 Carbon functions from a forked process is classified as unsafe
764 by Apple. All Carbon-dependent functions should be deprecated.
765
766 * src/base/ftmac.c: Use essential header files <Carbon/Carbon.h>
767 and <ApplicationServices/ApplicationServices.h> instead of
768 all-in-one header file <CoreServices/CoreServices.h>.
769
770 Include <sys/syslimits.h> and replace HFS_MAXPATHLEN by Apple
771 genuine macro PATH_MAX.
772
773 Add fallback macro for kATSOptionFlagsUnRestrictedScope which
774 is not found in Mac OS X 10.0.
775
776 Multi-character constants ('POST', 'sfnt' etc) are replaced by
777 64bit constants calculated by FT_MAKE_TAG() macro.
778
779 For the index in the segment of resource fork, new portable
780 type ResourceIndex is introduced for better compatibility.
781 This type is since Mac OS X 10.5, so it is defined as short
782 when built on older platforms.
783
784 (FT_ATSFontGetFileReference): If build target is only the systems
785 10.5 and newer, it calls Apple genuine ATSFontGetFileReference().
786
787 (FT_GetFile_From_Mac_ATS_Name): Return an error if system is 10.5
788 and newer or 64bit platform, because legacy type FSSpec type is
789 removed completely.
790
791 (FT_New_Face_From_FSSpec): Ditto.
792
793 2007-11-01 Werner Lemberg <wl@gnu.org>
794
795 * src/sfnt/sfobjs.c (sfnt_done_face): Check `sfnt' everywhere. This
796 fixes Savannah bug #21485.
797
798 2007-10-29 Daniel Svoboda <dasvo@planeta@cz>
799
800 * src/winfonts/winfnt.c (FNT_Face_Init): Check first that the driver
801 can handle the font at all, then check `face_index'. Otherwise, the
802 driver might return the wrong error code. This fixes Savannah bug
803 #21468.
804
805 2007-10-21 Werner Lemberg <wl@gnu.org>
806
807 * src/sfnt/sfobjs.c (sfnt_load_face): Support bit 9 and prepare
808 support for bit 8 of the `fsSelection' field in the `OS/2' table.
809 MS is already using this; hopefully, this becomes part of OpenType
810 1.5.
811 Prepare also support for `name' IDs 21 (WWS_FAMILY) and 22
812 (WWS_SUBFAMILY).
813
814 2007-10-20 Werner Lemberg <wl@gnu.org>
815
816 * src/tools/docmaker/tohtml.py (html_header_2): Fix typo.
817 Add `td.left' element to CSS.
818 (toc_section_enter): Use it.
819
820 2007-10-18 David Turner <david@freetype.org>
821
822 * include/freetype/freetype.h, src/base/ftobjs.c: Rename API
823 functions related to cmap type 14 support to the
824 `FT_Object_ActionName' scheme:
825
826 FT_Get_Char_Variant_index -> FT_Face_GetCharVariantIndex
827 FT_Get_Char_Variant_IsDefault -> FT_Face_GetCharVariantIsDefault
828 FT_Get_Variant_Selectors -> FT_Face_GetVariantSelectors
829 FT_Get_Variants_Of_Char -> FT_Face_GetVariantsOfChar
830 FT_Get_Chars_Of_Variant -> FT_Face_GetCharsOfVariant
831
832 Update documentation accordingly.
833
834 * src/sfnt/ttcmap.c: Stronger cmap 14 validation.
835 Make the code a little more consistent with FreeType coding
836 conventions and modify the cmap14 functions that returned a newly
837 allocated array to use a persistent vector from the TT_CMap14 object
838 instead.
839
840 (TT_CMap14Rec): Provide array and auxiliary data for result.
841 (tt_cmap14_done, tt_cmap14_ensure): New functions.
842
843 (tt_cmap14_init, tt_cmap14_validate, tt_cmap14_char_map_def_binary,
844 tt_cmap14_char_map_nondef_binary, tt_cmap14_find_variant,
845 tt_cmap14_char_var_index, tt_cmap14_variants,
846 tt_cmap14_char_variants, tt_cmap14_def_char_count,
847 tt_cmap14_get_def_chars, tt_cmap14_get_nondef_chars,
848 tt_cmap14_variant_chars, tt_cmap14_class_rec): Updated and improved.
849
850 2007-10-15 George Williams <gww@silcom.com>
851
852 Add support for cmap type 14.
853
854 * devel/ftoption.h, include/freetype/config/ftoption.h
855 (TT_CONFIG_CMAP_FORMAT_14): New macro.
856
857 * include/freetype/internal/ftobjs.h (FT_CMap_CharVarIndexFunc,
858 FT_CMap_CharVarIsDefaultFunc, FT_CMap_VariantListFunc,
859 FT_CMap_CharVariantListFunc, FT_CMap_VariantCharListFunc): New
860 support function prototypes.
861 (FT_CMap_ClassRec): Add them.
862 Update all users.
863
864 * include/freetype/ttnameid.h (TT_APPLE_ID_VARIANT_SELECTOR): New
865 macro.
866
867 * include/freetype/freetype.h (FT_Get_Char_Variant_Index,
868 FT_Get_Char_Variant_IsDefault, FT_Get_Variant_Selectors,
869 FT_Get_Variants_Of_Char, FT_Get_Chars_Of_Variant): New API
870 functions.
871
872 * src/base/ftobjs.c (find_variant_selector_charmap): New auxiliary
873 function.
874 (FT_Set_Charmap): Disallow cmaps of type 14.
875 (FT_Get_Char_Variant_Index, FT_Get_Char_Variant_IsDefault,
876 FT_Get_Variant_Selectors, FT_Get_Variants_Of_Char,
877 FT_Get_Chars_Of_Variant): New API functions.
878
879 * src/sfnt/ttcmap.c (TT_PEEK_UINT24, TT_NEXT_UINT24): New macros.
880
881 (TT_CMap14Rec, tt_cmap14_init, tt_cmap14_validate,
882 tt_cmap14_char_index, tt_cmap14_char_next, tt_cmap14_get_info,
883 tt_cmap14_char_map_def_binary, tt_cmap14_char_map_nondef_binary,
884 tt_cmap14_find_variant, tt_cmap14_char_var_index,
885 tt_cmap14_char_var_isdefault, tt_cmap14_variants,
886 tt_cmap14_char_variants, tt_cmap14_def_char_count,
887 tt_cmap14_get_def_chars, tt_cmap14_get_nondef_chars,
888 tt_cmap14_variant_chars, tt_cmap14_class_rec): New functions and
889 structures for cmap 14 support.
890 (tt_cmap_classes): Register tt_cmap14_class_rec.
891 (tt_face_build_cmaps): One more error message.
892
893 * docs/CHANGES: Mention cmap 14 support.
894
895 2007-10-01 Werner Lemberg <wl@gnu.org>
896
897 * src/base/ftobjs.c (find_unicode_charmap): If search for a UCS-4
898 charmap fails, do the loop again while searching a UCS-2 charmap.
899 This favours MS charmaps over Apple ones.
900
901 2007-08-29 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
902
903 * src/base/ftmac.c: Introduction of abstract `short' data types,
904 ResFileRefNum and ResID. These types were introduced for Copland,
905 then backported to MPW. The variables exchanged with FileManager
906 QuickDraw frameworks are redefined by these data types. Patch was
907 proposed by Sean McBride.
908 * builds/mac/ftmac.c: Ditto.
909
910 2007-08-18 Werner Lemberg <wl@gnu.org>
911
912 * src/otvalid/otvcmmn.c (otv_x_y_ux_sy): Skip context glyphs. Found
913 by Imran Yousaf. Fixes Savannah bug #20773.
914
915 (otv_Lookup_validate): Correct handling of LookupType. Found by
916 Imran Yousaf. Fixes Savannah bug #20782.
917
918 2007-08-17 George Williams <gww@silcom.com>
919
920 * src/otvalid/otvgsub.c (otv_SingleSubst_validate): Fix handling of
921 SingleSubstFormat1.
922
923 2007-08-11 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
924
925 * builds/unix/configure.raw: Fix a bug which sets CC_BUILD by
926 ${build-gcc} (unchecked) instead of by ${build}-gcc (checked).
927 Found by Ryan Hill.
928
929 2007-08-11 George Williams <gww@silcom.com>
930
931 * src/otvalid/otvcommn.c, src/otvalid/otvcommn.h
932 (otv_Coverage_validate): Add fourth argument to pass an expected
933 count value. Update all users.
934 Check glyph IDs.
935 (otv_ClassDef_validate): Check `StartGlyph'.
936
937 * src/otvalid/otvgsub.c (otv_SingleSubst_validate): More glyph ID
938 checks.
939
940 * src/otvalid/otvmath.c (otv_MathConstants_validate): There are only
941 56 constants.
942 (otv_GlyphAssembly_validate, otv_MathGlyphConstruction_validate):
943 Check glyph IDs.
944
945 2007-08-08 Werner Lemberg <wl@gnu.org>
946
947 * src/otvalid/otvbase.c, src/otvalid/otvcommn.c,
948 src/otvalid/otvgdef.c, src/otvalid/otvgpos.c, src/otvalid/otvgsub.c,
949 src/otvalid/otvjstf.c: s/FT_INVALID_DATA/FT_INVALID_FORMAT/ where
950 appropriate. Reported by George.
951
952 * include/freetype/internal/fttrace.h: Define `trace_otvmath'.
953
954 * src/otvalid/rules.mk (OTV_DRV_SRC): Add otvmath.c.
955
956 * docs/CHANGES: Updated.
957
958 2007-08-08 George Williams <gww@silcom.com>
959
960 Add `MATH' validating support to otvalid module.
961
962 * include/freetype/tttags.h (TTAG_MATH): New macro.
963 * include/freetype/ftotval.h (FT_VALIDATE_MATH): New macro.
964 (FT_VALIDATE_OT): Updated.
965
966 * src/otvalid/otmath.c: New file.
967
968 * src/otvalid/otvalid.c: Include otvmath.c.
969 * src/otvalid/otvmod.c (otv_validate): Handle `MATH' table.
970
971 2007-08-04 Werner Lemberg <wl@gnu.org>
972
973 * builds/unix/configure.raw: Add call to AC_LIBTOOL_WIN32_DLL.
974 Fixes Savannah bug #20686.
975
976 2007-08-03 Werner Lemberg <wl@gnu.org>
977
978 * src/psnames/psmodule.c: Fix usage of
979 FT_CONFIG_OPTION_POSTSCRIPT_NAMES macro. Reported by Graham Asher.
980
981 2007-07-31 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
982
983 * src/base/ftmac.c (open_face_from_buffer): The argument
984 `driver_name' is typed as `const char*' to match with the
985 callers in FT_New_Face_From_LWFN and FT_New_Face_From_SFNT.
986 This is same with open_face_from_buffer in src/base/ftobjs.c.
987 Found and fixed by Sean McBride.
988
989 2007-07-28 Werner Lemberg <wl@gnu.org>
990
991 * src/raster/ftraster.c (count_table): Make it conditional.
992 * src/base/ftobjs.c (FT_New_Library): Check FT_RENDER_POOL_SIZE with
993 a preprocessor statement.
994
995 2007-07-27 Werner Lemberg <wl@gnu.org>
996
997 * src/base/ftoutln.c (FT_Outline_Translate): Check `outline' before
998 first usage. From Savannah patch #6115.
999
1000 2007-07-16 Werner Lemberg <wl@gnu.org>
1001
1002 * docs/CHANGES: Updated.
1003
1004 2007-07-16 Derek Clegg <dclegg@apple.com>
1005
1006 Add new service for getting the ROS from a CID font.
1007
1008 * include/freetype/config/ftheader.h (FT_CID_H): New macro.
1009 * include/freetype/ftcid.h: New file.
1010
1011 * include/freetype/internal/ftserv.h (FT_SERVIVE_CID_H): New macro.
1012 * include/freetype/internal/services/svcid.h: New file.
1013
1014 * src/base/ftcid.c: New file.
1015
1016 * src/cff/cffdrivr.c: Include FT_SERVICE_CID_H.
1017 (cff_get_ros): New function.
1018 (cff_service_cid_info): New service structure.
1019 (cff_services): Register it.
1020
1021 * src/cff/cffload.c (cff_font_done): Free registry and ordering.
1022
1023 * src/cff/cfftypes.h (CFF_FontRec): Add `registry' and `ordering'.
1024
1025 * modules.cfg (BASE_EXTENSIONS): Add ftcid.c.
1026
1027 2007-07-11 Derek Clegg <dclegg@apple.com>
1028
1029 Add support for postscript name service to CFF driver.
1030
1031 * src/cff/cffdrivr.c: Include FT_SERVICE_POSTSCRIPT_NAME_H.
1032 (cff_get_ps_name): New function.
1033 (cff_service_ps_name): New service structure.
1034 (cff_services): Register it.
1035
1036 2007-07-07 Werner Lemberg <wl@gnu.org>
1037
1038 * src/base/ftglyph.c (FT_Glyph_Copy): Fix initialization of
1039 `target'. Reported by Sean McBride.
1040
1041 2007-07-06 Werner Lemberg <wl@gnu.org>
1042
1043 * src/pfr/pfrcmap.c: Include pfrerror.h.
1044
1045 * src/autofit/afindic.c: Add some external declarations to pacify
1046 `make multi' compilation.
1047
1048 * src/cid/cidgload.c (cid_load_glyph): Pacify compiler.
1049
1050 * src/cff/cffdrivr.c (cff_ps_get_font_info), src/cff/cffobjs.c
1051 (cff_strcpy), include/freetype/internal/ftmemory.h (FT_MEM_STRDUP),
1052 src/autofit/aflatin.c (af_latin_hints_compute_edges),
1053 src/autofit/afcjk.c (af_cjk_hints_compute_edges), src/sfnt/ttmtx.c
1054 (tt_face_get_metrics), src/base/ftobjs.c (open_face)
1055 [FT_CONFIG_OPTION_INCREMENTAL]: Fix compilation with C++ compiler.
1056
1057 * docs/release: Mention test compilation targets.
1058
1059 2007-07-04 Werner Lemberg <wl@gnu.org>
1060
1061 * docs/PROBLEMS: Mention that some PS based fonts can't be
1062 handled correctly by FreeType.
1063
1064 * src/truetype/ttgload.c (load_truetype_glyph): Always allow a
1065 recursion depth of 1. This was the maximum value in TrueType 1.0,
1066 and some older fonts don't set this field correctly.
1067
1068 * src/gxvalid/gxvmort1.c
1069 (gxv_mort_subtable_type1_substTable_validate): Fix tracing message.
1070
1071 2007-07-03 Werner Lemberg <wl@gnu.org>
1072
1073 * src/autofit/aflatin.c (af_latin_metrics_init_blues): Initialize
1074 `round' to pacify compiler.
1075
1076 2007-07-02 Werner Lemberg <wl@gnu.org>
1077
1078
1079 * Version 2.3.5 released.
1080 =========================
1081
1082
1083 Tag sources with `VER-2-3-5'.
1084
1085 * docs/CHANGES, docs/VERSION.DLL: Update documentation and bump
1086 version number to 2.3.5.
1087
1088 * README, Jamfile (RefDoc), builds/win32/visualc/index.html,
1089 builds/win32/visualc/freetype.dsp,
1090 builds/win32/visualc/freetype.vcproj,
1091 builds/win32/visualce/index.html,
1092 builds/win32/visualce/freetype.dsp,
1093 builds/win32/visualce/freetype.vcproj: s/2.3.4/2.3.5/, s/234/235/.
1094
1095 * include/freetype/freetype.h (FREETYPE_PATCH): Set to 5.
1096
1097 * builds/unix/configure.raw (version_info): Set to 9:16:3.
1098
1099 2007-07-01 David Turner <david@freetype.org>
1100
1101 * include/freetype/freetype.h, src/base/ftpatent.c
1102 (FT_Face_SetUnpatentedHinting): New function to dynamically change
1103 the setting after a face is created.
1104
1105 * src/truetype/ttgload.c (TT_Load_Simple_Glyph): Fix a small bug
1106 that created distortions in the bytecode interpreter results.
1107
1108 2007-06-30 David Turner <david@freetype.org>
1109
1110 * src/truetype/ttinterp.c (Ins_IUP): Add missing variable
1111 initialization.
1112
1113 * src/autofit/aflatin.c (af_latin_metric_init_blues): Get rid of an
1114 infinite loop in the case of degenerate fonts.
1115
1116 2007-06-26 Rahul Bhalerao <b.rahul.pm@gmail.com>
1117
1118 Add autofit module for Indic scripts. This currently just reuses
1119 the CJK-specific functions.
1120
1121 * include/freetype/config/ftoption.h (AF_CONFIG_OPTION_INDIC): New
1122 macro.
1123 * devel/ftoption.h: Synchronize with
1124 include/freetype/config/ftoption.h.
1125
1126 * src/autofit/afindic.c, src/autofit/afindic.h: New files.
1127
1128 * src/autofit/afglobal.c, src/autofit/aftypes.h,
1129 src/autofit/autofit.c: Updated.
1130
1131 * src/autofit/Jamfile (_sources), * src/autofit/rules.mk
1132 (AUTOF_DRV_SRC): Updated.
1133
1134 2007-06-23 David Turner <david@freetype.org>
1135
1136 * src/truetype/ttgload.c (TT_Load_Simple): Fix change from
1137 2007-06-16 that prevented the TrueType module from loading most
1138 glyphs.
1139
1140 2007-06-20 Werner Lemberg <wl@gnu.org>
1141
1142 * src/cff/cffgload.c (cff_slot_load): Fix logic of 2007-05-28
1143 change.
1144
1145 2007-06-19 Werner Lemberg <wl@gnu.org>
1146
1147 * src/type1/t1load.c (parse_encoding): Handle one more error.
1148
1149 2007-06-19 Dmitry Timoshkov <dmitry@codeweavers.com>
1150
1151 * src/winfonts/winfnt.c (fnt_face_get_dll_font): Return error
1152 FNT_Err_Invalid_File_Format if file format was recognized but
1153 the file doesn't contain any FNT(NE) or RT_FONT(PE) resources.
1154 Add verbose debug logs to make it easier to debug failing load
1155 attempts.
1156 (FNT_Face_Init): A single FNT font can't contain more than 1 face,
1157 so return an error if requested face index is > 0.
1158 Do not do further attempt to load fonts if a previous attempt has
1159 failed but returned error FNT_Err_Invalid_File_Format, i.e., the
1160 file format has been recognized but no fonts found in the file.
1161
1162 2007-07-19 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
1163
1164 * src/base/ftmac.c: Apply patches proposed by Sean McBride.
1165 (FT_GetFile_From_Mac_Name): Insert FT_UNUSED macros to fix
1166 the compiler warnings against unused arguments.
1167 (FT_ATSFontGetFileReference): Ditto.
1168 (FT_GetFile_From_Mac_ATS_Name): Ditto.
1169 (FT_New_Face_From_FSSpec): Ditto.
1170 (lookup_lwfn_by_fond): Fix wrong comment.
1171 Replace `const StringPtr' by more appropriate type
1172 `ConstStr255Param'.
1173 FSRefMakePathPath always returns UTF8 POSIX pathname in
1174 Mach-O, thus HFS pathname support is dropped.
1175 (count_faces): Remove HLock and HUnlock which is not
1176 required on Mac OS X anymore.
1177 (FT_New_Face_From_SFNT): Ditto.
1178 (FT_New_Face_From_FOND): Ditto.
1179 * builds/mac/ftmac.c: Synchronize to src/base/ftmac.c,
1180 except of HFS pathname support and HLock/HUnlock.
1181 They are required on classic CFM environment.
1182
1183 2007-06-18 Werner Lemberg <wl@gnu.org>
1184
1185 * src/psaux/psobjs.c (ps_parser_skip_PS_token): Remove incorrect
1186 assertion.
1187 (ps_parser_to_bytes): Fix error message.
1188
1189 * src/type42/t42objs.c (T42_Open_Face): Handle one more error.
1190 * src/type42/t42parse.c (t42_parse_sfnts): s/alloc/allocated/.
1191 Don't allow mixed binary and hex strings.
1192 Handle string_size == 0 and string_buf == 0.
1193 (t42_parse_encoding): Handle one more error.
1194
1195 2007-06-18 Werner Lemberg <wl@gnu.org>
1196
1197 * src/psaux/psobjs.c (ps_tofixedarray, ps_tocoordarray): Fix exit
1198 logic.
1199 (ps_parser_load_field) <T1_FIELD_TYPE_BBOX>: Skip delimiters
1200 correctly.
1201 (ps_parser_load_field_table): Use `fields->array_max' instead of
1202 T1_MAX_TABLE_ELEMENTS to limit the number of arguments.
1203
1204 * src/cff/cffgload.c (cff_decoder_prepare): Fix change from
1205 2007-06-06.
1206
1207 2007-06-17 Werner Lemberg <wl@gnu.org>
1208
1209 * src/tools/ftrandom.c (font_size): New global variable.
1210 (TestFace): Use it.
1211 (main): Handle new option `--size' to set `font_size'.
1212 (Usage): Updated.
1213
1214 * src/winfonts/winfnt.c (fnt_face_get_dll_font): Exit in case of
1215 invalid font.
1216 (FNT_Load_Glyph): Protect against invalid bitmap width.
1217
1218 2007-06-16 David Turner <david@freetype.org>
1219
1220 * src/smooth/ftgrays.c (gray_find_cell, gray_set_cell, gray_hline):
1221 Prevent integer overflows when rendering very large outlines.
1222
1223 * src/truetype/ttgload.c (TT_Load_Simple_Glyph): Check the
1224 well-formedness of the contours array when loading a glyph.
1225
1226 * src/truetype/ttinterp.c (TT_Load_Context): Initialize `zp0', `zp1',
1227 and `zp2'.
1228 (Ins_IP): Check argument ranges to reject bogus operations properly.
1229 (IUP_WorkerRec): Add `max_points' member.
1230 (_iup_worker_interpolate): Check argument ranges.
1231 (Ins_IUP): Ignore empty outlines.
1232
1233 2007-06-16 Dmitry Timoshkov <dmitry@codeweavers.com>
1234
1235 * src/winfonts/winfnt.h: Add necessary structures for PE resource
1236 parsing.
1237 (WinPE32_HeaderRec): New structure.
1238 (WinPE32_SectionRec): New structure.
1239 (WinPE_RsrcDirRec): New structure.
1240 (WinPE_RsrcDirEntryRec): New structure.
1241 (WinPE_RsrcDataEntryRec): New structure.
1242 (FNT_FontRec): Remove unused `size_shift' field.
1243
1244 * src/winfonts/winfnt.c (fnt_face_get_dll_font): Add support for
1245 loading bitmap .fon files in PE format.
1246
1247 2007-06-15 Dmitry Timoshkov <dmitry@codeweavers.com>
1248
1249 * builds/win32/ftdebug.c: Unify debug level handling with other
1250 platforms.
1251
1252 2007-06-14 Dmitry Timoshkov <dmitry@codeweavers.com>
1253
1254 * builds/win32/ftdebug.c (FT_Message): Send debug output to the
1255 console as well as to the debugger.
1256
1257 2007-06-14 Werner Lemberg <wl@gnu.org>
1258
1259 * src/autofit/aflatin.c (af_latin_uniranges): Expand structure to
1260 cover all ranges which could possibly be handled by the aflatin
1261 module (since the default fallback for unknown ranges is now the
1262 afcjk module). It might be necessary to fine-tune this further by
1263 splitting off modules for Greek, Cyrillic, or other blocks.
1264
1265 2007-06-11 David Turner <david@freetype.org>
1266
1267 * src/autofit/aflatin.c (af_latin_hints_link_segments): Fix
1268 incorrect segment linking computation. This was the root cause of
1269 Savannah bug #19565.
1270
1271
1272 * src/autofit/* [FT_OPTION_AUTOFIT2]: Some very experimental changes
1273 to improve the Latin auto-hinter. Note that the new code is
1274 disabled by default since it is not stabilized yet.
1275
1276 * src/autofit/aflatin2.c, src/autofit/aflatin2.h: New files
1277 (disabled currently).
1278
1279 * src/autofit/afhints.c: Remove dead code.
1280 (af_axis_hints_new_edge): Add argument to handle segment directions.
1281 (af_edge_flags_to_string): New function.
1282 (af_glyph_hints_dump_segments, af_glyph_hints_dump_edges): Handle
1283 option flags.
1284 (af_glyph_hints_reload): Add argument to handle inflections.
1285 Simplify.
1286 (af_direction_compute): Fine tuning.
1287 (af_glyph_hints_align_edge_points): Fix logic.
1288 (af_glyph_hints_align_strong_points): Do linear search for small
1289 edge counts.
1290 (af_glyph_hints_align_weak_points): Skip any touched neighbors.
1291 (af_iup_shift): Handle zero `delta'.
1292
1293 * src/autofit/afhints.h: Updated.
1294 (AF_SORT_SEGMENTS): New macro (disabled).
1295 (AF_AxisHintsRec) [AF_SORT_SEGMENTS]: New member `mid_segments'.
1296
1297 * src/autofit/afglobal.c (af_face_globals_get_metrics): Add
1298 argument to pass option flags for handling scripts.
1299 * src/autofit/afglobal.h: Updated.
1300
1301 * src/autofit/afcjk.c: Updated.
1302 * src/autofit/aflatin.c: Updated.
1303 (af_latin_metrics_scale_dim): Don't reduce scale by 2%.
1304
1305 (af_latin_hints_compute_segments) [AF_HINT_METRICS]: Remove dead code.
1306 (af_latin_hints_compute_edges) [AF_HINT_METRICS]: Remove dead code.
1307 Don't set `edge->dir'
1308 (af_latin_hint_edges): Add more logging.
1309
1310 * src/autofit/afloader.c: Updated.
1311
1312 2007-06-11 Werner Lemberg <wl@gnu.org>
1313
1314 * docs/CHANGES: Document FT_Face_CheckTrueTypePatents.
1315
1316 2007-06-10 David Turner <david@freetype.org>
1317
1318 * src/truetype/ttgload.c (TT_Load_Simple_Glyph): Slight speed-up to
1319 the TrueType glyph loader.
1320
1321 * include/freetype/config/ftoption.h: Clarify documentation
1322 regarding unpatented hinting.
1323
1324
1325 Add new `FT_Face_CheckTrueTypePatents' API.
1326
1327 * include/freetype/freetype.h (FT_Face_CheckTrueTypePatents): New
1328 declaration.
1329
1330 * include/freetype/internal/services/svttglyf.h,
1331 src/base/ftpatent.c: New files.
1332
1333 * include/freetype/internal/ftserv.h (FT_SERVICE_TRUETYPE_GLYF_H):
1334 New macro.
1335
1336 * src/truetype/ttdriver.c: Include FT_SERVICE_TRUETYPE_GLYF_H and
1337 `ttpload.h'.
1338 (tt_service_truetype_glyf): New service structure.
1339 (tt_services): Register it.
1340
1341 * modules.cfg (BASE_EXTENSIONS), src/base/Jamfile (_sources): Add
1342 `ftpatent.c'.
1343
1344 2007-06-08 Werner Lemberg <wl@gnu.org>
1345
1346 * src/sfnt/sfobjs.c (sfnt_load_face): Undo change from 2007-04-28.
1347 Fonts without a cmap must be handled correctly by FreeType (anything
1348 else would be a bug).
1349
1350
1351 * src/psaux/t1decode.c (t1_decoder_parse_charstrings)
1352 [FT_DEBUG_LEVEL_TRACE]: Improve tracing message.
1353
1354 2007-06-07 Werner Lemberg <wl@gnu.org>
1355
1356 * src/sfnt/ttsbit0.c (tt_sbit_decoder_init,
1357 tt_sbit_decoder_load_image): Protect against integer overflows.
1358
1359
1360 * src/pfr/pfrgload.c (pfr_glyph_load_simple): More bounding checks
1361 for `x_control' and `y_control'.
1362
1363 2007-06-06 Werner Lemberg <wl@gnu.org>
1364
1365 * src/base/ftoutln.c (FT_Outline_Decompose): Check `last'.
1366
1367
1368 * src/pfr/pfrcmap.c (pfr_cmap_init): Convert assertion into normal
1369 FreeType error.
1370
1371
1372 * src/winfonts/winfnt.c (fnt_face_get_dll_font): Do a rough check of
1373 `font_count'.
1374
1375
1376 * src/type1/t1load.c (parse_font_matrix): Check `temp_scale'.
1377
1378
1379 * src/cff/cffgload.c (cff_decoder_prepare): Change return type to
1380 `FT_Error'.
1381 Check `fd_index'.
1382 (cff_slot_load): Updated.
1383 * src/cff/cffgload.h: Updated.
1384
1385 2007-06-05 Werner Lemberg <wl@gnu.org>
1386
1387 * src/pfr/pfrgload.c (pfr_glyph_done): Comment out unused code.
1388 (pfr_glyph_load_simple): Convert assertion into normal FreeType
1389 error.
1390 Check `idx'.
1391 (pfr_glyph_load_compound, pfr_glyph_curve_to, pfr_glyph_line_to):
1392 Convert assertion into normal FreeType error.
1393
1394 * src/pfr/pfrtypes.h (PFR_GlyphRec): Comment out unused code.
1395
1396
1397 * src/winfonts/winfnt.c (FNT_Face_Init): Check `family_size'.
1398
1399
1400 * src/psaux/psobjs.c (ps_tocoordarray, ps_tofixedarray): Return -1
1401 in case of parsing error.
1402 (ps_parser_load_field): Updated.
1403
1404 * src/type1/t1load.c (parse_font_matrix): Updated.
1405
1406 2007-06-04 Werner Lemberg <wl@gnu.org>
1407
1408 * src/cid/cidgload.c (cid_load_glyph): Check `fd_select'.
1409
1410 * src/tools/ftrandom/Makefile: Depend on `libfreetype.a'.
1411
1412 2007-06-03 Werner Lemberg <wl@gnu.org>
1413
1414 * src/tools/ftrandom/*: Add the `ftrandom' test program written by
1415 George Williams (with some modifications).
1416
1417 2007-06-03 Werner Lemberg <wl@gnu.org>
1418
1419 * src/base/ftobjs.c (destroy_charmaps), src/type1/t1objs.c
1420 (T1_Face_Done), src/winfonts/winfnt.c (FNT_Face_Done): Check for
1421 face == NULL. Suggested by Graham Asher.
1422
1423 2007-06-03 Ismail Dönmez <ismail@pardus.org.tr>
1424
1425 * src/base/ftobjs.c (FT_Request_Metrics): Fix compiler warning.
1426
1427 2007-06-02 Werner Lemberg <wl@gnu.org>
1428
1429 * include/freetype/fterrdef.h (FT_Err_Corrupted_Font_Header,
1430 FT_Err_Corrupted_Font_Glyphs): New error codes for BDF files.
1431
1432 * src/bdf/bdflib.c (bdf_load_font): Use them.
1433
1434 * src/bdf/bdflib.c (_bdf_parse_start): Check `FONT' better.
1435
1436 2007-06-01 Werner Lemberg <wl@gnu.org>
1437
1438 * src/base/ftobjs.c (FT_Request_Metrics), src/cache/ftccmap.c
1439 (FTC_CMapCache_Lookup): Remove unused code.
1440
1441 2007-06-01 Sean McBride <sean@rogue-research.com>
1442
1443 * src/truetype/ttinterp.c (Null_Vector, NULL_Vector): Removed,
1444 unused.
1445
1446 2007-06-01 Werner Lemberg <wl@gnu.org>
1447
1448 * src/cid/cidparse.c (cid_parser_new): Don't continue second search
1449 pass for `StartData' if an error has occurred.
1450 Exit properly if no `StartData' has been seen at all.
1451
1452 * builds/unix/ftsystem.c (FT_Stream_Open): Don't use ULONG_MAX but
1453 LONG_MAX to avoid compiler warning. Suggested by Sean McBride.
1454
1455 2007-05-30 Werner Lemberg <wl@gnu.org>
1456
1457 * src/type1/t1load.c (parse_subrs, parse_charstrings): Protect
1458 against too small binary data strings.
1459
1460 * src/bdf/bdflib.c (_bdf_parse_glyphs): Check `STARTCHAR' better.
1461
1462 2007-05-28 David Turner <david@freetype.org>
1463
1464 * src/cff/cffgload.c (cff_slot_load): Do not apply the identity
1465 transformation. This significantly reduces the loading time of CFF
1466 glyphs.
1467
1468 * docs/CHANGES: Updated.
1469
1470 * src/autofit/afglobal.c (AF_SCRIPT_LIST_DEFAULT): Change default
1471 hinting script to CJK, since it works well with more scripts than
1472 latin. Thanks to Rahul Bhalerao <b.rahul.pm@gmail.com> for pointing
1473 this out!
1474
1475 2007-05-25 Werner Lemberg <wl@gnu.org>
1476
1477 * docs/CHANGES: Updated.
1478
1479 2007-05-24 Werner Lemberg <wl@gnu.org>
1480
1481 * src/truetype/ttobjs.h (tt_size_ready_bytecode): Move declaration
1482 into TT_USE_BYTECODE_INTERPRETER preprocessor block.
1483
1484 2007-05-24 Graham Asher <graham.asher@btinternet.com>
1485
1486 * src/truetype/ttobjs.c (tt_size_ready_bytecode)
1487 [!TT_USE_BYTECODE_INTERPRETER]: Removed. Unused.
1488
1489 2007-05-22 David Turner <david@freetype.org>
1490
1491 * src/truetype/ttgload.c (load_truetype_glyph): Fix last change to
1492 avoid crashes in case the bytecode interpreter is not used.
1493
1494
1495 Avoid heap blowup with very large .Z font files. This fixes
1496 Savannah bug #19910.
1497
1498 * src/lzw/ftzopen.h (FT_LzwStateRec): Remove `in_cursor',
1499 `in_limit', `pad', `pad_bits', and `in_buff' members.
1500 Add `buf_tab', `buf_offset', `buf_size', `buf_clear', and
1501 `buf_total' members.
1502
1503 * src/lzw/ftzopen.c (ft_lzwstate_get_code): Rewritten. It now takes
1504 only one argument.
1505 (ft_lzwstate_refill, ft_lzwstate_reset, ft_lzwstate_io): Updated.
1506
1507 2007-05-20 Ismail Dönmez <ismail@pardus.org.tr>
1508
1509 * src/pshinter/pshrec.c (ps_mask_table_set_bits): Add `const'.
1510 (ps_dimension_set_mask_bits): Remove `const'.
1511
1512 2007-05-19 Werner Lemberg <wl@gnu.org>
1513
1514 * src/sfnt/ttmtx.c (tt_face_get_metrics)
1515 [!FT_CONFIG_OPTION_OLD_INTERNALS]: Another type-punning fix.
1516
1517 2007-05-19 Derek Clegg <dclegg@apple.com>
1518
1519 Savannah patch #5929.
1520
1521 * include/freetype/tttables.h, src/base/ftobjcs.c
1522 (FT_Get_CMap_Format): New function.
1523
1524 * include/freetype/internal/services/svttcmap.c (TT_CMapInfo): Add
1525 `format' member.
1526 * src/sfnt/ttcmap.c (tt_cmap{0,2,4,6,8,10,12}_get_info): Set
1527 cmap_info->format.
1528
1529 2007-05-19 Werner Lemberg <wl@gnu.org>
1530
1531 * src/truetype/ttgload.c (load_truetype_glyph): Save graphics state
1532 before handling subglyphs so that it can be reinitialized each time.
1533 This fixes Savannah bug #19859.
1534
1535 2007-05-16 Werner Lemberg <wl@gnu.org>
1536
1537 * src/cache/ftccache.c (ftc_node_mru_link, ftc_node_mru_unlink),
1538 src/cache/ftccache.h (FTC_CACHE_LOOKUP_CMP), src/cache/ftcglyph.h
1539 (FTC_GCACHE_LOOKUP_CMP), src/pshinter/pshmod.c (ps_hinter_init),
1540 src/sfnt/ttmtx.c (tt_face_load_hmtx, tt_face_load_hhea,
1541 tt_face_get_metrics): Fix type-punning issues.
1542
1543 2007-05-15 David Turner <david@freetype.org>
1544
1545 * include/freetype/config/ftstdlib.h,
1546 include/freetype/internal/ftobjs.h: As suggested by Graham Asher,
1547 ensure that ft_isalnum, ft_isdigit, etc., use hard-coded values
1548 instead on relying on the locale-dependent functions provided by
1549 <ctypes.h>.
1550
1551 2007-05-15 Graham Asher <graham.asher@btinternet.com>
1552
1553 * src/autofit/afcjk.c (af_cjk_hints_compute_edges): Remove unused
1554 variable.
1555 * src/autofit/afloader.c (af_loader_load_g): Ditto.
1556
1557 * src/base/ftobjs.c (ft_validator_error): Use `ft_jmp_buf'.
1558 (open_face_from_buffer): Initialize `stream'.
1559 (FT_Request_Metrics): Remove unused variable.
1560 Remove redundant `break' statements.
1561 (FT_Get_Track_Kerning): Remove unused variable.
1562
1563 * src/psaux/afmparse.c (afm_parse_track_kern, afm_parse_kern_pairs,
1564 afm_parse_kern_data): Remove redundant
1565 `break' statements.
1566 (afm_parser_parse): Ditto.
1567 Don't use uninitialized variables.
1568
1569 * src/psnames/psmodule.c (VARIANT_BIT): Define as unsigned long.
1570 Use `|' operator instead of `^' to set it.
1571 Update all users.
1572
1573 * src/sfnt/ttcmap.c (tt_face_build_cmaps): Use `ft_jmp_buf'.
1574 * src/sfnt/ttkern.c (tt_face_load_kern): Remove unused variable.
1575
1576 * src/truetype/ttgload.c (TT_Load_Simple_Glyph): Remove redundant
1577 comparison.
1578 (TT_Process_Simple_Glyph): Use FT_UInt for `n_points' and `i'.
1579 (TT_Load_Glyph): Remove unused variable.
1580
1581 2007-05-13 Derek Clegg <dclegg@apple.com>
1582
1583 * src/base/ftobjs.c (FT_New_Library): Only allocate rendering pool
1584 if FT_RENDER_POOL_SIZE is > 0. From Savannah patch #5928.
1585
1586 2007-05-11 David Turner <david@freetype.org>
1587
1588 * src/cache/ftbasic.c, include/freetype/ftcache.h
1589 (FTC_ImageCache_LookupScaler, FTC_SBit_Cache_LookupScaler): Two new
1590 functions that allow us to look up glyphs using an FTC_Scaler object
1591 to specify the size, making it possible to use fractional pixel
1592 sizes.
1593
1594 * src/truetype/ttobjs.c (tt_size_ready_bytecode): Set
1595 `size->cvt_ready'. Reported by Boris Letocha.
1596
1597 2007-05-09 Graham Asher <graham.asher@btinternet.com>
1598
1599 * src/truetype/ttinterp.c (Ins_IP), src/autofit/aflatin.c
1600 (af_latin_metrics_scale_dim): Fix compiler warnings.
1601
1602 2007-05-06 Werner Lemberg <wl@gnu.org>
1603
1604 * builds/win32/visualce/freetype.sln: Removed, as requested by
1605 Vincent.
1606
1607 2007-05-04 Vincent RICHOMME <richom.v@free.fr>
1608
1609 * builds/win32/visualce/*: Add Visual C++ project files for Pocket
1610 PC targets.
1611
1612 * docs/CHANGES: Document them.
1613
1614 2007-05-04 <harry@kdevelop.org>
1615
1616 * builds/unix/ftsystem.c (FT_Stream_Open): Handle return value 0 of
1617 mmap (which might happen on some RTOS). From Savannah patch #5909.
1618
1619 2007-05-03 Werner Lemberg <wl@gnu.org>
1620
1621 * src/base/ftobjs.c (FT_Set_Char_Size): Simplify code.
1622 * include/freetype/freetype.h (FT_Set_Char_Size): Update
1623 documentation.
1624
1625 2007-04-28 Victor Stinner <victor.stinner@inl.fr>
1626
1627 * src/sfnt/sfobjs.c (sfnt_load_face): Check error code after loading
1628 `cmap'.
1629
1630 2007-04-27 Werner Lemberg <wl@gnu.org>
1631
1632 * src/truetype/ttgload.c (TT_Load_Simple_Glyph): Check for negative
1633 number of points in contours. Problem reported by Victor Stinner
1634 <victor.stinner@haypocalc.com>.
1635 (TT_Process_Simple_Glyph): Synchronize variable types.
1636
1637 2007-04-26 Werner Lemberg <wl@gnu.org>
1638
1639 * src/base/ftglyph.c (FT_Glyph_Copy): Always set second argument to
1640 zero in case of error. This fixes Savannah bug #19689.
1641
1642 2007-04-25 Boris Letocha <b.letocha@cz.gmc.net>
1643
1644 * src/truetype/ttobjs.c: Fix a typo that created a speed regression
1645 in the TrueType bytecode loader.
1646
1647 2007-04-10 Martin Horak <horakm@centrum.cz>
1648
1649 * src/sfnt/sfobjs.c (sfnt_load_face) [FT_CONFIG_OPTION_INCREMENTAL]:
1650 Ignore `hhea' table. This fixes Savannah bug #19261.
1651
1652 2007-04-09 Werner Lemberg <wl@gnu.org>
1653
1654
1655 * Version 2.3.4 released.
1656 =========================
1657
1658
1659 Tag sources with `VER-2-3-4'.
1660
1661 * docs/CHANGES, docs/VERSION.DLL: Update documentation and bump
1662 version number to 2.3.4.
1663
1664 * README, Jamfile (RefDoc), builds/win32/visualc/index.html,
1665 builds/win32/visualc/freetype.dsp,
1666 builds/win32/visualc/freetype.vcproj: s/2.3.3/2.3.4/, s/233/234/.
1667
1668 * include/freetype/freetype.h (FREETYPE_PATCH): Set to 4.
1669
1670 * builds/unix/configure.raw (version_info): Set to 9:15:3.
1671
1672 2007-04-09 Martin Horak <horakm@centrum.cz>
1673
1674 * src/truetype/ttgload.c (load_truetype_glyph): Save and restore
1675 memory stream to avoid a crash with the incremental memory
1676 interface (Savannah bug #19260).
1677
1678 2007-04-06 David Turner <david@freetype.org>
1679
1680 * src/base/ftbimap.c (ft_bitmap_assure_buffer): Fix buffer-overwrite bug
1681 (Savannah bug #19536).
1682
1683 2007-04-04 Werner Lemberg <wl@gnu.org>
1684
1685
1686 * Version 2.3.3 released.
1687 =========================
1688
1689
1690 Tag sources with `VER-2-3-3'.
1691
1692 * docs/CHANGES: Mention CVE-2007-1351.
1693
1694 2007-04-03 David Turner <david@freetype.org>
1695
1696 * src/base/ftobjs.c (FT_Set_Char_Size): As suggested by James Cloos,
1697 if one of the resolution values is 0, treat it as if it were the
1698 same as the other value.
1699
1700 2007-04-02 David Turner <david@freetype.org>
1701
1702 Add special code to detect `extra-light' fonts and do not snap their
1703 stem widths too much to avoid bizarre hinting effects.
1704
1705 * src/autofit/aflatin.h (AF_LatinAxisRec): Add `standard_width' and
1706 `extra_light' members.
1707
1708 * src/autofit/aflatin.c (af_latin_metrics_init_widths): Initialize
1709 them.
1710 (af_latin_metrics_scale_dim): Set `extra_light'.
1711 (af_latin_compute_stem_width): Use `extra_light'.
1712
1713 2007-03-28 David Turner <david@freetype.org>
1714
1715 * src/base/ftbitmap.c (ft_bitmap_assure_buffer): Fix zero-ing of the
1716 padding.
1717
1718 2007-03-28 Werner Lemberg <wl@gnu.org>
1719
1720 * src/bdf/bdflib.c (setsbit, sbitset): Handle values >= 128
1721 gracefully.
1722 (_bdf_set_default_spacing): Increase `name' buffer size to 256 and
1723 issue an error for longer names. This fixes CVE-2007-1351.
1724 (_bdf_parse_glyphs): Limit allowed number of glyphs in font to the
1725 number of code points in Unicode.
1726
1727 * builds/win32/visualc/index.html,
1728 builds/win32/visualc/freetype.dsp,
1729 builds/win32/visualc/freetype.vcproj, README: s/2.3.2/2.3.3/,
1730 s/232/233/.
1731
1732 * docs/CHANGES: Mention ftdiff.
1733
1734 2007-03-26 David Turner <david@freetype.org>
1735
1736 * src/truetype/ttinterp.c [FIX_BYTECODE]: Remove it and
1737 corresponding code.
1738 (Ins_MD): Last regression fix.
1739
1740 * src/autofit/aflatin.c (af_latin_metrics_init_blues): Fix blues
1741 computations in order to ignore single-point contours. These are
1742 never rasterized and correspond in certain fonts to mark-attach
1743 points that are very far from the glyph's real outline, ruining the
1744 computation.
1745
1746 * src/autofit/afloader.c (af_loader_load_g): In the case of
1747 monospaced fonts, always set `rsb_delta' and `lsb_delta' to 0.
1748 Otherwise code that uses them will most certainly ruin the fixed
1749 advance property.
1750
1751 * docs/CHANGES, docs/VERSION.DLL, README, Jamfile (RefDoc): Update
1752 documentation and bump version number to 2.3.3.
1753
1754 * include/freetype/freetype.h (FREETYPE_PATCH): Set to 3.
1755
1756 * builds/unix/configure.raw (version_info): Set to 9:14:3.
1757
1758 2007-03-26 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
1759
1760 * builds/unix/ftconfig.in: Disable Carbon framework dependency on
1761 64bit ABI on Mac OS X 10.4.x (ppc & i386). Found by Sean McBride.
1762 * builds/vms/ftconfig.h: Ditto.
1763 * include/freetype/config/ftconfig.h: Ditto.
1764
1765 2007-03-22 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
1766
1767 * builds/unix/ftsystem.c (FT_Stream_Open): Temporary fix to prevent
1768 32bit unsigned long overflow by 64bit filesize on LP64 platform, as
1769 proposed by Sean McBride:
1770 http://lists.gnu.org/archive/html/freetype-devel/2007-03/msg00032.html
1771
1772 2007-03-22 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
1773
1774 * builds/unix/ftconfig.in: Suppress SGI compiler's warning against
1775 setjmp, proposed by Sean McBride:
1776 http://lists.gnu.org/archive/html/freetype-devel/2007-03/msg00032.html
1777
1778 2007-03-19 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
1779
1780 * builds/unix/configure.raw: Dequote `OS_INLINE' in comment of
1781 conftest.c, to avoid unexpected shell evaluation. Possibly it is a
1782 bug or undocumented behaviour of autoconf.
1783
1784 2007-03-18 David Turner <david@freetype.org>
1785
1786 * src/truetype/ttinterp.c (Ins_MDRP): Another bytecode regression
1787 fix; testing still needed.
1788
1789 * src/truetype/ttinterp.c (Ins_MD): Another bytecode regression fix.
1790
1791 2007-03-17 David Turner <david@freetype.org>
1792
1793 * src/truetype/ttinterp.c (Ins_IP): Fix wrong handling of the
1794 (undocumented) twilight zone special case.
1795
1796 2007-03-09 Werner Lemberg <wl@gnu.org>
1797
1798
1799 * Version 2.3.2 released.
1800 =========================
1801
1802
1803 Tag sources with `VER-2-3-2'.
1804
1805 * builds/win32/visualc/index.html,
1806 builds/win32/visualc/freetype.dsp,
1807 builds/win32/visualc/freetype.vcproj, README: s/2.3.1/2.3.2/,
1808 s/231/232/.
1809
1810 2007-03-08 David Turner <david@freetype.org>
1811
1812 * docs/CHANGES, docs/VERSION.DLL: Updated for upcoming release.
1813
1814 * builds/unix/configure.raw (version_info): Set to 9:13:3.
1815
1816 * include/freetype/freetype.h (FREETYPE_PATCH): Set to 2.
1817
1818 * README, Jamfile (RefDoc): s/2.3.1/2.3.2/.
1819
1820 * src/base/ftutil.c (ft_mem_strcpyn): Fix a bug that prevented the
1821 function to work properly, over-writing user-provided buffers in
1822 some cases. Reported by James Cloos <cloos@jhcloos.com>.
1823
1824
1825 2007-03-05 Werner Lemberg <wl@gnu.org>
1826
1827 * include/freetype/config/ftstdlib.h (ft_strstr): New wrapper
1828 macro for `strstr'.
1829
1830 * src/truetype/ttobjs.c (tt_face_init): Use ft_strstr for scanning
1831 `trick_names', as suggested by Ivan Nincic.
1832
1833 2007-03-05 David Turner <david@freetype.org>
1834
1835 * src/base/ftinit.c (FT_Init_FreeType): Fix a small memory leak in
1836 case FT_Init_FreeType fails for some reason. Problem reported by
1837 Maximilian Schwerin <maximilian.schwerin@buelowssiege.de>.
1838
1839 * src/truetype/ttobs.c (tt_size_init_bytecode): Clear the `x_ppem'
1840 and `y_ppem' fields of the `TT_Size.metrics' structure, not those of
1841 `TT_Size.root.metrics'. Problem reported by Daniel Glöckner
1842 <daniel-gl@gmx.net>.
1843
1844 * src/type1/t1afm.c (T1_Read_PFM): Read kerning values as 16-bit
1845 signed values, not unsigned ones. Problem reported by Johannes
1846 Walther <joh_walt@yahoo.de>.
1847
1848 2007-02-21 David Turner <david@freetype.org>
1849
1850 * src/pshinter/pshalgo.c (psh_hint_align): Fix a bug in the hinting
1851 of small and ghost stems in the Postscript interpreter.
1852
1853 2007-02-20 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
1854
1855 * src/base/ftmac.c (FT_GetFileRef_From_Mac_ATS_Name): Fix memory
1856 leak, patch by "Jjgod Jiang" <gzjjgod@gmail.com>.
1857 * builds/mac/ftmac.c (FT_GetFileRef_From_Mac_ATS_Name): Ditto.
1858
1859 2007-02-16 Werner Lemberg <wl@gnu.org&g