From aaf21968deb85b635cb6aa6544df233ea5981346 Mon Sep 17 00:00:00 2001 From: marha Date: Wed, 13 Feb 2013 09:48:21 +0100 Subject: Update to following packages: openssl-1.0.1e freetype-2.4.11 --- freetype/ChangeLog | 1220 ++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 1175 insertions(+), 45 deletions(-) (limited to 'freetype/ChangeLog') diff --git a/freetype/ChangeLog b/freetype/ChangeLog index 23b23d848..b5c7d13aa 100644 --- a/freetype/ChangeLog +++ b/freetype/ChangeLog @@ -1,3 +1,1133 @@ +2012-12-20 Werner Lemberg + + * Version 2.4.11 released. + ========================== + + + Tag sources with `VER-2-4-11'. + + * docs/CHANGES, docs/release: Updated. + + * docs/VERSION.DLL: Update documentation and bump version number to + 2.4.11. + + * README, Jamfile (RefDoc), + builds/win32/vc2005/freetype.vcproj, builds/win32/vc2005/index.html, + builds/win32/vc2008/freetype.vcproj, builds/win32/vc2008/index.html, + builds/win32/vc2010/freetype.vcxproj, builds/win32/vc2010/index.html, + builds/win32/visualc/freetype.dsp, + builds/win32/visualc/freetype.vcproj, + builds/win32/visualc/index.html, builds/win32/visualce/freetype.dsp, + builds/win32/visualce/freetype.vcproj, + builds/win32/visualce/index.html, + builds/wince/vc2005-ce/freetype.vcproj, + builds/wince/vc2005-ce/index.html, + builds/wince/vc2008-ce/freetype.vcproj, + builds/wince/vc2008-ce/index.html: s/2.4.10/2.4.11/, s/2410/2411/. + + * include/freetype/freetype.h (FREETYPE_PATCH): Set to 10. + + * builds/unix/configure.raw (version_info): Set to 16:0:10. + + * builds/toplevel.mk (dist): Don't include `.mailmap'. + +2012-12-20 Alexei Podtelezhnikov + + [base] Improve trigonometric core. + + FreeType used to rely on a 24-step iteration CORDIC algorithm to + calculate trigonometric functions and rotate vectors. It turns out + that once the vector is in the right half-plane, the initial rotation + by 63 degrees is not necessary. The algorithm is perfectly capable + to converge to any angle starting from the second 45 degree rotation. + This patch removes the first rotation and makes it a 23-step CORDIC + algorithm. + + * src/base/fttrigon.c (FT_TRIG_SCALE, FT_TRIG_COSCALE): Update macro + values. + (ft_trig_pseudo_rotate, ft_trig_pseudo_polarize): Remove initial + rotation. + +2012-12-19 Werner Lemberg + + * src/base/ftobjs.c (ft_property_do): Fix compiler warning. + +2012-12-19 Alexei Podtelezhnikov + + * src/base/ftrfork.c (FT_Raccess_Guess): Switch to FT_Int counters. + +2012-12-19 Alexei Podtelezhnikov + + [base] Clean up trigonometric core. + + * src/base/fttrrigon.c (ft_trig_pseudo_polarize): Align algorithm + with `ft_trig_pseudo_rotate'. + +2012-12-18 Infinality + + [truetype] Minor performance enhancement. + + * src/truetype/ttgload.c: (TT_Process_Simple_Glyph): Use FT_MulFix + instead of FT_MulDiv. + +2012-12-17 Infinality + + [truetype] Remove unusued code and variables. + + * src/truetype/ttinterp.c: Updated. + (Ins_FDEF): Remove opcode patterns that are not being used. + +2012-12-16 Werner Lemberg + + Various compiler warning fixes. + + * include/freetype/internal/ftserv.h (FT_SERVICE_UNAVAILABLE): Use + `logical not' operator instead of negation. The idea is that `~' + returns exactly the data type enforced by the cast to a pointer (be + it 32bit or 64bit or whatever), while a negative integer has not + this flexibility. + * src/cache/ftccmap.c (FTC_CMAP_UNKNOWN): Ditto. + * src/truetype/ttgxvar.c (ALL_POINTS, TT_Get_MM_Var): Ditto. + * src/type/t1load.c (T1_Get_MM_Var): Ditto. + (parse_blend_axis_types): Use cast. + * src/bdf/bdflib.c (_bdf_readstream): Use cast. + +2012-12-16 Infinality + + [truetype] Remove unusued code and variables. Add minor fixes. + + * src/truetype/ttsubpix.h: Updated. + (SKIP_NONPIXEL_Y_MOVES_Rules_Exceptions): Add Trebuchet MS. + (ALLOW_X_DMOVEX_Rules): Remove Arial characters. + (ALLOW_X_DMOVE_Rules): Remove Arial characters. + (RASTERIZER_35_Rules): Verdana no longer needs to be here. + (SKIP_IUP_Rules): Formatting fix. + (DELTAP_SKIP_EXAGGERATED_VALUES_Rules): Remove Segoe UI. + (COMPATIBLE_WIDTHS_Rules): Add Monaco and Trebuchet MS. + (X_SCALING_Rules): Add misc. corrective fixes. + + * src/truetype/ttgload.c: (TT_Process_Simple_Glyph): Adjust correction + factor for emboldening during scaling. + + * src/truetype/ttinterp.h: Updated. + (TT_ExecContextRec): Remove unused variables. + + * src/truetype/ttobjs.h: Updated. + (TT_SizeRec): Add ttfautohinted variable. + + * src/truetype/ttinterp.c: Updated. + (Ins_FDEF): Rework code to fix bugs and add more detection. + (Ins_CALL): Remove unused code. + (Ins_LOOPCALL): Remove unused code. + (TT_RunIns): Remove unusued code. + (Ins_SHPIX): Add logic to handle ttfautohinted fonts. + (Ins_MIRP): Don't round x in cut-in calculation. Add logic to handle + ttfautohinted fonts. + +2012-12-16 Werner Lemberg + + [sfnt] Fix Savannah bug #37936. + + * src/sfnt/ttload.c (tt_face_load_gasp): Avoid memory leak. + +2012-12-15 Alexei Podtelezhnikov + + [base] Fix 11-year old bug. + + Since the initial commit (ebe85f59) the value of FT_TRIG_SCALE has + always been slightly less than the correct value, which has been + given in the comment as a hexadecimal. As a result, vector lengths + were underestimated and rotated vectors were shortened. + + * src/base/fttrigon.c (FT_TRIG_SCALE): Fix macro value. + +2012-12-15 Werner Lemberg + + [bdf] Fix Savannah bug #37907. + + * src/bdf/bdflib.c (_bdf_parse_glyphs) : Normalize + negative second parameter of `ENCODING' field also. + +2012-12-15 Werner Lemberg + + [bdf] Fix Savannah bug #37906. + + * src/bdf/bdflib.c (_bdf_parse_glyphs) : Use correct array + size for checking `glyph_enc'. + +2012-12-15 Werner Lemberg + + [bdf] Fix Savannah bug #37905. + + * src/bdf/bdflib.c (_bdf_parse_start) : Reset + `props_size' to zero in case of allocation error; this value gets + used in a loop in `bdf_free_font'. + +2012-12-10 Alexei Podtelezhnikov + + [truetype] Scale F_dot_P down. + + The dot product between freeVector and projVector or cosine of + the angle between these FT_F2Dot14 unit vectors used to be scaled up + by 4 and routinely occupied 32 bits in an FT_Long field F_dot_P. + This patch scales the value down by 2^14 instead, which simplifies + its use throughout the bytecode interpreter. + + This does not lead to the loss of precision because the lower bits + are unreliable anyway. Consider two unit vectors (1,0) and (.6,.8) + for which the true value of F_dot_P is .6 * 0x40000000 = 0x26666666. + These vectors are stored as (0x4000,0) and (0x2666,0x3333) after + rounding and F_dot_P is assigned 0x26660000. The lower bits were + already lost while rounding the unit vector components. + + Besides code simplification, this change can lead to better + performance when FT_MulDiv with the scaled-down F_dot_P is less + likely to use the costly 64-bit path. We are not changing the type + of F_dot_P to FT_F2Dot14 at this point. + + * src/truetype/ttinterp.c (Compute_Funcs): Scale F_dot_P down by 14 + bits and modify its use accordingly. + (Direct_Move, Direct_Move_Orig, Compute_Point_Displacement): Modify + the use of F_dot_P field. + * src/truetype/ttobjs.c (tt_size_run_fpgm): Change arbitrary + assignment of F_dot_P to its theoretical maximum in case we decide + to scale back its type later. + +2012-12-09 Johnson Y. Yan + + [type1] Another fix for 2012-09-17 commit. + + * src/type1/t1parse.c (T1_Get_Private_Dict) : Correctly set + `limit' value. + +2012-12-06 Alexei Podtelezhnikov + + [truetype] Tweak the previous commit. + + * src/truetype/ttinterp.c (Current_Ratio): Put unit vector + components as the second TT_MulFix14 arguments. This is required + on 16-bit systems. + +2012-12-06 Alexei Podtelezhnikov + + [truetype] Microoptimizations in bytecode interpreter. + + * src/truetype/ttinterp.c (TT_DivFix14): New macro. + (Normalize): Use it here. + (Current_Ratio): Use TT_MulFix14 instead of FT_MulDiv. + (Ins_SHPIX): Cancel out two TT_MulFix14 calls. + +2012-12-05 Alexei Podtelezhnikov + + [truetype] Cosmetic improvement in bytecode interpreter. + + * src/truetype/ttinterp.c: Use explicit calls to FT_MulDiv, + FT_MulFix, and FT_DivFix instead of macros. + +2012-12-03 John Tytgat + + [pshinter] Clamp BlueScale value. + + This is Savannah bug #37856. + + * src/pshinter/pshglob.c (psh_calc_max_height): New function. + (psh_globals_new): Use it to limit BlueScale value to + `1 / max_of_blue_zone_heights'. + +2012-12-01 Alexei Podtelezhnikov + + [truetype, type1] Revise the use of FT_MulDiv. + + * src/truetype/ttgxvar.c: Updated. + * src/truetype/ttobjs.c: Updated. + * src/type1/t1load.c: Updated. + +2012-11-30 Werner Lemberg + + [configure] Preserve customized `ftoption.h'. + + Problem reported by Del Merritt . + + * builds/unix/configure.raw : Don't + remove existing FreeType configuration files. + +2012-11-29 John Tytgat + + [type1] Fix Savannah bug #37831. + + The bug report also contains a patch. + + * src/type1/t1parse.c (T1_Get_Private_Dict) : Really fix + change from 2012-09-17. + +2012-11-28 Alexei Podtelezhnikov + + [truetype] Fix formatting and typo. + +2012-11-27 Alexei Podtelezhnikov + + [cid, type1, type42] Clean up units_per_EM calculations. + + * src/cid/cidload.c (cid_parse_font_matrix): Updated. + * src/type1/t1load.c (t1_parse_font_matrix): Updated. + * src/type42/t42parse.c (t42_parse_font_matrix): Updated. + +2012-11-27 Alexei Podtelezhnikov + + [ftstroke] Minor improvement. + + * src/base/ftstroke.c: Replace nested FT_DivFix and FT_MulFix with + FT_MulDiv. + +2012-11-17 Werner Lemberg + + * src/base/fttrigon.c (ft_trig_downscale): Make 64bit version work. + +2012-11-15 Alexei Podtelezhnikov + + [base] Fix integer overflows in dd5718c7d67a. + + * src/base/ftoutln.c (FT_Outline_EmboldenXY): Use FT_MulDiv. + +2012-11-15 Werner Lemberg + + [autofit] Trace stem widths. + + * src/autofit/aflatin.c (af_latin_metrics_init_widths): Add some + FT_TRACE calls. + +2012-11-13 Werner Lemberg + + [cff] Add support for OpenType Collections (OTC). + + * src/cff/cffload.c (cff_font_load): Separate subfont and face + index handling to load both pure CFFs with multiple subfonts and + OTCs (with multiple faces where each face holds exactly one + subfont). + * src/cff/cffobjs.c (cff_face_init): Updated. + +2012-11-12 Werner Lemberg + + [autofit] Minor improvement. + + * src/autofit/aflatin.c (af_latin_hints_compute_blue_edges): Fix + loop. + +2012-11-10 Werner Lemberg + + [autofit] Improve tracing. + + * src/autofit/aflatin.c (af_latin_hint_edges) + [FT_DEBUG_LEVEL_TRACE]: Count number of actions and emit something + if there weren't any. + +2012-11-04 Alexei Podtelezhnikov + + [base] Fortify emboldening code against egregious distortions. + + * src/base/ftoutln.c (FT_Outline_EmboldenXY): Threshold emboldening + strength when it leads to segment collapse. + +2012-11-03 Alexei Podtelezhnikov + + [base] Clean up emboldening code and improve comments there. + + * src/base/ftoutln.c (FT_Outline_EmboldenXY): Replace sequential + calls to FT_MulFix and FT_DivFix with FT_MulDiv. + Mention that bisectors are used to figure out the shift direction. + +2012-10-24 Werner Lemberg + + [autofit] Add standard character to `AF_ScriptClassRec' structure. + + * src/autofit/aftypes.h (AF_ScriptClassRec): Add `standard_char' + member. + (AF_DEFINE_SCRIPT_CLASS): Updated. + + * src/autofit/aflatin.c (af_latin_metrics_init_widths): Use it. + (af_latin_metrics_init, af_latin_script_class): Updated. + + * src/autofit/aflatin.c (af_latin2_metrics_init_widths): Use it. + (af_latin2_metrics_init, af_latin2_script_class): Updated. + + * src/autofit/afcjk.c (af_cjk_metrics_init_widths): Use it. + (af_cjk_metrics_init, af_cjk_script_class): Updated. + + * src/autofit/afindic.c (af_indic_metrics_init, + af_indic_script_class): Updated. + + * src/autofit/afcjk.h, src/autofit/aflatin.h: Updated. + + * src/autofit/afdummy.c: Updated. + +2012-10-24 Werner Lemberg + + [autofit] Only use Unicode CMap. + + * src/autofit/aflatin.c (af_latin_metrics_init): Implement it, to be + in sync with `af_face_globals_compute_script_coverage'. + +2012-10-21 Werner Lemberg + + [psaux] Improve parsing of invalid numbers. + + * src/psaux/psconv.c (PS_Conv_Strtol): Always parse complete number, + even in case of overflow. + (PS_Conv_ToInt): Only increase cursor if parsing was successful. + (PS_Conv_ToFixed): Ditto. + Trace underflow and data error. + +2012-10-21 Werner Lemberg + + [smooth] Improve tracing. + + * src/smooth/ftgrays.c (gray_sweep): Trace last sweep line of + current band also. + +2012-10-20 Alexei Podtelezhnikov + + [truetype] Cheaper way to threshold angles between vectors. + + * src/truetype/ttinterp.c (Ins_ISECT): Thresholding tangent is a lot + cheaper than thresholding sine. + +2012-10-20 Werner Lemberg + + [cff] Improve parsing of invalid real numbers. + + * src/cff/cffparse.c (cff_parse_real): Always parse complete number, + even in case of overflow or underflow. + Also trace one more underflow. + +2012-10-20 Andreas Pehnack + + [sfnt] Load pure CFF fonts wrapped in SFNT container. + + Such fonts only have a `cmap' and a `CFF' table. + + * src/sfnt/ttload.c (tt_face_load_font_dir): Don't call + `check_table_dir' if font signature is `OTTO'. + +2012-10-20 Werner Lemberg + + [psaux] Fix some value overflows and improve tracing. + + * src/psaux/psconv.c: Include FT_INTERNAL_DEBUG_H. + (FT_COMPONENT): Define. + (PS_Conv_Strtol): Return FT_Long. + Handle bad data and overflow. + Emit some tracing messages in case of error. + (PS_Conv_ToInt): Return FT_Long. + (PS_Conv_ToFixed): Updated. + * src/psaux/psconv.h: Updated. + + * include/freetype/internal/fttrace.h: Add `psconv'. + +2012-10-20 Werner Lemberg + + [autofit] Fix `make multi CC=c++'. + + * src/autofit/aflatin.c, src/autofit/aflatin2.c: Include + `afglobal.h'. + * src/autofit/afloader.c: Fix order of header files. + * src/autofit/afmodule.c: Include `afglobal.h' and `aferrors.h'. + +2012-10-19 Werner Lemberg + + [cff] Fix more value errors and improve tracing. + + * src/cff/cffparse.c (cff_parse_integer): Emit tracing message in + case of error. + (cff_parse_real): Handle and trace overflow, underflow, and bad data + consistently. + (do_fixed): New helper function, handling and tracing overflow. + (cff_parse_fixed, cff_parse_fixed_scaled): Use `do_fixed'. + +2012-10-17 Werner Lemberg + + [psaux] Fix some value overflows. + + * src/psaux/psconv.c (PS_Conv_ToFixed): Implement it. + +2012-10-17 Bram Tassyns + + [cff] Fix value overflow. + + * src/cff/cffparse.c (cff_parse_fixed_scaled): Implement it. + +2012-10-17 Werner Lemberg + + [truetype] Fix Savannah bug #37572. + + * src/truetype/ttinterp.c (Ins_ISECT): Use angle between vectors to + avoid grazing intersections. The previous threshold was too coarse, + incorrectly rejecting short but valid vectors. + +2012-09-30 Gilles Espinasse + + Remove useless `rm' detection. + + `rm -f' is directly used in the `configure' script created by + autoconf, thus no availability test is necessary. + + * builds/unix/configure.raw (RMF): Remove test. + * builds/unix/unix-def.in (DELETE): Updated. + +2012-09-29 Werner Lemberg + + [autofit] Minor optimization. + + * src/autofit/afglobals.c (af_face_globals_compute_script_coverage): + Add loop condition. + +2012-09-29 Werner Lemberg + + [autofit] Fix thinko. + + * src/autofit/aftypes.h (AF_SCRIPT): + s/AF_SCRIPT_NONE/AF_SCRIPT_DUMMY/. We already use `AF_SCRIPT_NONE' + as a bit mask. + + * src/autofit/afdummy.c: Updated. + +2012-09-18 Werner Lemberg + + [autofit] Implement `increase-x-height' property. + + * include/freetype/ftautoh.h (FT_Prop_IncreaseXHeight): New + structure. + + * include/autofit/afmodule.c (af_property_get_face_globals): New + function, re-using code from `af_property_get'. + (af_property_set, af_property_get): Handle `increase-x-height'. + Updated. + +2012-09-18 Werner Lemberg + + [autofit] Implement Infinality's `increase glyph heights'. + + This is an improved version of a similar fix contained in the + so-called `Infinality patch', taken from + + http://www.infinality.net/fedora/linux/zips/freetype-infinality-2.4.10-20120616_01-x86_64.tar.bz2 + + which addresses various enhancements of the auto-hinter. Without + properties to control a module's metadata it wasn't possible to + adapt the patches because everything was originally controlled by + environment variables which I consider not suitable in general. + + A patch to control `increase_x_height' follows. + + * src/autofit/afglobal.h (AF_PROP_INCREASE_X_HEIGHT_MIN, + AF_PROP_INCREASE_X_HEIGHT_MAX): New macros. + (AF_FaceGlobalsRec): Add `increase_x_height' member. + * src/autofit/afglobal.c (af_face_globals_new): Initialize it. + + * src/autofit/aflatin.c (af_latin_metrics_scale_dim), + * src/autofit/aflatin2.c (af_latin2_metrics_scale_dim): Implement + handling of `increase_x_height'. + +2012-09-18 Werner Lemberg + + [autofit] Add hierarchical property access to some structures. + + * src/autofit/afglobal.h: Include `afmodule.h'. + (AF_FaceGlobalsRec): Add `module' member. + (AF_FaceGlobals): Typedef moved to... + * src/autofit/aftypes.h: Here. + (AF_ScriptMetricsRec): Add `globals' member. + + * src/autofit/afglobal.c (af_face_globals_new, + af_face_globals_compute_script_coverage, + af_face_globals_get_metrics): Updated. + + * src/autofit/afloader.c (af_loader_reset), src/autofit/afmodule.c + (af_property_get): Updated. + +2012-09-17 Werner Lemberg + + [type1] Fix Savannah bug #37350. + + * src/type1/t1parse.c (T1_Get_Private_Dict) : Check for ASCII + storage only if we actually have at least four bytes. + +2012-09-15 Werner Lemberg + + [autofit] Implement `fallback-script' property. + + * src/autofit/afglobal.c: s/default_script/fallback_script/. + * src/autofit/afglobal.h: s/AF_SCRIPT_DEFAULT/AF_SCRIPT_FALLBACK/. + + * src/autofit/afmodule.c: s/default_script/fallback_script/. + (af_property_set, af_property_get): Implement `fallback-script'. + * src/autofit/afmodule.h: s/default_script/fallback_script/. + + * include/freetype/ftautoh.h: Document it. + +2012-09-15 Werner Lemberg + + [autofit] Correct previous Unicode 6.1.0 change. + + The auto-hinter's latin module only handles latin ligatures in the + `Alphabetical Presentation Forms' block. + + * src/autofit/aflatin.c (af_latin_uniranges): Fix it. + +2012-09-15 Werner Lemberg + + * src/autofit/afmodule.c: s/FT_Err_/AF_Err_/. + +2012-09-15 Werner Lemberg + + [autofit] Make default script a global property. + + * src/autofit/afmodule.h (AF_ModuleRec): Add `default_script' field. + + * src/autofit/afglobal.c (af_face_globals_compute_script_coverage, + af_face_globals_new), src/autofit/afloader.c (af_loader_reset), + src/autofit/afmodule.c (af_property_get) , + af_autofitter_init: + Handle default script. + + * src/autofit/afglobal.h: Updated. + +2012-09-15 Werner Lemberg + + Use `FT_Module' instead of `FT_Library' argument in property funcs. + + This internal change simplifies access to global module data. + + * include/freetype/internal/services/svprop.h + (FT_Properties_SetFunc, FT_Properties_GetFunc): Change accordingly. + + * src/base/ftobjs.c (ft_property_do), src/autofit/afmodule.c + (af_property_set, af_property_get): Updated. + +2012-09-14 Werner Lemberg + + [autofit] Update to Unicode 6.1.0. + + * src/autofit/afcjk.c (af_cjk_uniranges), src/autofit/aflatin.c + (af_latin_uniranges): Add and fix ranges. + +2012-09-14 Werner Lemberg + + [autofit] Pass `AF_Module' instead of `AF_Loader'. + + We want to access the (not yet existing) module's global data later + on. + + * src/autofit/afloader.c: Include `afmodule.h'. + (af_loader_init, af_loader_reset, af_loader_done, + af_loader_load_glyph): Change accordingly. + * src/autofit/afmodule.c (AF_ModuleRec): Move to `afmodule.h'. + Updated. + + * src/autofit/afmodule.h: Include `afloader.h'. + (AF_ModuleRec): Define here. + * src/autofit/afloader.h (AF_Module): Define here. + Updated. + +2012-09-14 Werner Lemberg + + [autofit] Fix `make multi'. + + * include/freetype/internal/fttrace.h: Add `afmodule'. + * src/autofit/afmodule.c: Include FT_INTERNAL_DEBUG_H. + (FT_COMPONENT): Define. + +2012-09-14 Werner Lemberg + + * src/autofit/afmodule.c: s/FT_Autofitter/AF_Module/. + +2012-09-12 Werner Lemberg + + [autofit] Minor reorganization. + + * src/autofit/afglobal.c (AF_SCRIPT_LIST_DEFAULT, + AF_SCRIPT_LIST_NONE, AF_DIGIT): Move to... + * src/autofit/afglobal.h (AF_SCRIPT_DEFAULT, AF_SCRIPT_LIST_NONE, + AF_DIGIT): This and update code. + +2012-09-01 Werner Lemberg + + [autofit] Implement `glyph-to-script-map' property. + + * include/freetype/ftautoh.h: New public header file. + * include/freetype/config/ftheader.h (FT_AUTOHINTER_H): New macro. + + * src/autofit/afglobal.c (AF_FaceGlobalsRec): Move structure to... + * src/autofit/afglobal.h: This header file. + * src/autofit/afmodule.c: Include FT_AUTOHINTER_H. + (af_property_get): Handle `glyph-to-script-map'. + +2012-08-31 Werner Lemberg + + [autofit] Implement properties service framework. + + No properties are added yet. + + * src/autofit/afmodule.c: Include FT_SERVICE_PROPERTIES_H. + (af_property_set, af_property_get): New dummy functions. + (af_service_properties, af_services, af_get_interface): Provide + service setup. + (autofit_moduleclass): Add service interface. + + * src/autofit/afpic.c: Add necessary forward declarations. + (autofit_module_class_pic_init): Add code for service addition. + (autofit_module_pic_free): Add code for service removal. + * src/autofit/afpic.h (AF_SERVICES_GET, AF_SERVICE_PROPERTIES_GET): + New macros which provide necessary syntactical sugar for PIC + support. + +2012-08-30 Werner Lemberg + + Implement properties to control FreeType modules. + + * include/freetype/fterrdef.h (FT_Err_Missing_Property): New error + code. + * include/freetype/ftmodapi.h (FT_Property_Set, FT_Property_Get): + New API. + + * include/freetype/internal/services/svprop.h: New file. + * include/freetype/internal/ftserv.h (FT_SERVICE_PROPERTIES_H): New + macro. + + * src/base/ftobjs.c: Include FT_SERVICE_PROPERTIES_H. + (ft_property_do, FT_Property_Set, FT_Property_Get): New functions. + +2012-08-29 Werner Lemberg + + [docmaker] Allow `-' in tags and identifiers. + + * src/tools/docmaker/content.py (re_identifier), + src/tools/docmaker/sources.py (re_markup_tag1, re_markup_tag2, + re_crossref): Add `-' in patterns. + +2012-08-27 Werner Lemberg + + [FT_CONFIG_OPTION_PIC] Fix g++ 4.6.2 compiler warnings. + + * include/freetype/internal/ftdriver.h (FT_DEFINE_DRIVER), + include/freetype/internal/ftobjs.h (FT_DEFINE_RENDERER, + FT_DEFINE_MODULE), include/freetype/internal/ftserv.h + (FT_DEFINE_SERVICEDESCREC1, FT_DEFINE_SERVICEDESCREC2, + FT_DEFINE_SERVICEDESCREC3, FT_DEFINE_SERVICEDESCREC4, + FT_DEFINE_SERVICEDESCREC5, FT_DEFINE_SERVICEDESCREC6), + src/autofit/afpic.c (autofit_module_class_pic_init), + src/base/basepic.c (ft_base_pic_init), src/base/ftinit.c + (ft_create_default_module_classes), src/cff/cffparse.c + (FT_Create_Class_cff_field_handlers), src/cff/cffpic.c + (cff_driver_class_pic_init), src/pshinter/pshpic.c + (pshinter_module_class_pic_init), src/psnames/pspic.c + (psnames_module_class_pic_init), src/raster/rastpic.c + (ft_raster1_renderer_class_pic_init), src/sfnt/sfntpic.c + (sfnt_module_class_pic_init), src/sfnt/ttcmap.c + (FT_Create_Class_tt_cmap_classes), src/smooth/ftspic.c + (ft_smooth_renderer_class_pic_init), src/truetype/ttpic.c + (tt_driver_class_pic_init): Initialize allocation variable. + +2012-08-27 Werner Lemberg + + [truetype] Fix compilation warning. + + * src/truetype/ttgload.c (IS_HINTED): Move macro to... + * src/truetype/ttobjs.h: This header file. + +2012-08-27 Werner Lemberg + + [autofit, cff, pshinter, psnames] More renamings for orthogonality. + + * src/autofit/afmodule.c, src/autofit/afpic.h: + s/AF_AUTOFITTER_/AF_/. + + * src/cff/cffdrivr.c, src/cff/cffobjs.c, src/cff/cffparse.c, + src/cff/cffpic.h: s/FT_CFF_/CFF_/. + + * src/pshinter/pshmod.c, src/pshinter/pshpic.h: + s/FT_PSHINTER_/PSHINTER_/. + + * src/psnames/psmodule.c, src/psnames/pspic.h: + s/FT_PSCMAPS/PSCMAPS_/. + +2012-08-27 Werner Lemberg + + [sfnt, truetype] More renamings for orthogonality. + + * src/sfnt/sfdriver.c, src/sfnt/sfntpic.h, src/sfnt/ttcmap.c, + src/truetype/ttdriver.c, src/truetype/ttpic.h: s/FT_SFNT_/SFNT_/, + s/FT_TT_/TT_/, s/GET_CMAP_INFO_GET/CMAP_INFO_GET/. + +2012-08-27 Werner Lemberg + + [autofit] Some macro and variable renamings for orthogonality. + + * include/freetype/internal/autohint.h, src/base/ftobjs.c, + src/autofit/afmodule.c, src/autofit/afpic.c, src/autofit/afpic.h: + s/SERVICE/INTERFACE/, s/service/interface/, s/Service/Interface/. + +2012-08-26 Werner Lemberg + + Fix Savannah bug #37178. + + * src/base/ftobjs.c (FT_Open_Face): Initialize `error' with + `FT_Err_Missing_Module' before loop to indicate `no valid drivers'. + +2012-08-17 Werner Lemberg + + * src/base/ftsynth.c (FT_GlyphSlot_Oblique): Fix shear angle. + + The old value was far too large (more than 20°). The new one + corresponds to 12°, quite common in typography. + +2012-08-12 Alexei Podtelezhnikov + + [smooth] Fix Savannah bug #37017. + + * src/smooth/ftgrays.c (gray_render_cubic): Use a different set of + checks when detecting super curvy splines to be split. + +2012-08-05 Werner Lemberg + + [autofit] Improve recognition of flat segments. + + Problem reported by Brad Dunzer . + + * src/autofit/aflatin.c (af_latin_metrics_init_blues): We have + a flat segment if the horizontal distance of best on-points is + larger than a given threshold. + +2012-08-05 Werner Lemberg + + [autofit] Variable renamings. + + * src/autofit/aflatin.c (af_latin_metrics_init_blues): Replace + `glyph' with `outline'. + s/best_first/best_contour_first/. + s/best_last/best_contour_last/. + +2012-07-31 Werner Lemberg + + [type1] Fix Savannah bug #37000. + + * src/type1/t1load.c (parse_encoding): Fix order of checks. + +2012-07-17 Werner Lemberg + + [psaux] Fix Savannah bug #36833. + + * src/psaux/t1decode.c (t1operator_seac): `seac' is not a valid + operator if we want metrics only. + +2012-07-16 Werner Lemberg + + [type1] Fix Savannah bug #36832. + + * src/type1/t1load.c (parse_charstrings): Reject negative number of + glyphs. + +2012-07-13 Werner Lemberg + + [type1] Fix Savannah bug #36829. + + * src/type1/t1load.c (parse_encoding): Check cursor position after + call to T1_Skip_PS_Token. + +2012-07-12 Alexei Podtelezhnikov + + Revert the last commit 45337b07. + + * src/base/ftstroke.c (FT_Stroker_New): Revert the previous change. + +2012-07-11 Alexei Podtelezhnikov + + [ftstroke] Fix uninitialized return value. + + * src/base/ftstroke.c (FT_Stroker_New): Return FT_Err_Ok instead. + +2012-07-11 Werner Lemberg + + [smooth] Avoid memory leak in case of failure. + + * src/smooth/ftsmooth.c (ft_smooth_render_generic): Use flags to + indicate what to clean up after finishing the function, with and + without errors. + +2012-07-09 Werner Lemberg + + Fix compilation with MSVC 5.0. + + Problem reported by Peter Breitenlohner and Akira Kakuto. + + * include/freetype/config/ftstdlib.h (ft_setjmp): Updated. + * src/sfnt/ttcmap.c (tt_face_build_cmaps): Remove cast. + +2012-07-09 Werner Lemberg + + [autofit] Improve debugging messages; do some code cleanup. + + * src/autofit/aflatin.c (af_latin_align_linked_edge, + af_latin_hint_edges): Synchronize with formatting used in the + ttfautohint project. + +2012-07-07 Gilles Espinasse + + Fix strict-aliasing warning. + + * src/base/ftglyph.c (FT_Glyph_To_Bitmap): Avoid double cast. + +2012-07-07 Dave Thomas + + [ARM] Fix FT_MulFix_arm. + + * include/freetype/config/ftconfig.h (FT_MulFix_arm) [__arm__]: + Avoid ADDS instruction to clobber condition codes. + +2012-07-06 Werner Lemberg + + [autofit] Do some code cleanup. + + * src/autofit/afglobal.c (af_face_globals_new): Simplify. + + * src/autofit/afhints.c: Use `FT_TRACE7' instead of `printf' + everywhere. + (FT_COMPONENT): New macro. + (af_glyph_hints_done): Simplify. + + * include/freetype/internal/fttrace.h: Updated. + +2012-07-05 Werner Lemberg + + [autofit] Improve output of debugging information. + + * src/autofit/afhints.c (af_glyph_hints_dump_segments): Print more + data; report no data. + (af_glyph_hints_dump_edges): Report no data. + +2012-07-04 Werner Lemberg + + [autofit] Fix Savannah bug #36091. + + * src/autofit/aflatin.c (af_latin_metrics_init_blues), + src/autofit/aflatin2.c (af_latin2_metrics_init_blues): Change the + constraint for testing round vs. flat segment: Accept either a + small distance or a small angle. + +2012-07-04 Werner Lemberg + + [autofit] Beautify blue zone tracing. + + * src/autofit/aflatin.c (af_latin_metrics_init_blues), + src/autofit/aflatin2.c (af_latin2_metrics_init_blues): Implement it. + +2012-07-03 Werner Lemberg + + [autofit] Quantize stem widths. + + * src/autofit/afangles.c (af_sort_widths): Rename to... + (af_sort_and_quantize_widths): This. + Add code to avoid stem widths which are almost identical. + * src/autofit/aftypes.h, src/autofit/aflatin.c, src/autofit/afcjk.c: + Updated. + +2012-07-03 Werner Lemberg + + [autofit] Minor speed-up. + + * src/autofit/afangles (af_sort_pos, af_sort_widths): Don't swap + elements if they are equal. + +2012-06-30 Gilles Espinasse + + Fix `checking if gcc static flag -static works' test. + + On my linux build tree, I receive yes answer in in every package I + build except freetype for this test checking if gcc static flag + `-static' works + + On freetype, no is received, unless bzip2 and zlib are disabled using + + ./configure --without-bzip2 --without-zlib + + The reason is that bzip2 and zlib tests add `-lz' and `-lbz2' to + LDFLAGS and this broke static flag test. + + * builds/unix/configure.raw: Update CFLAGS and LDFLAGS only after + LT_INIT has run. + +2012-06-28 Infinality + + [truetype] Fix various artifacts. + + Verdana was broken in the original Infinality commit. Also + includes other minor fixes. + + * src/truetype/ttsubpix.h: Updated. Removed unused macros. + (RASTERIZER_35_Rules): Add Verdana. + (SKIP_NONPIXEL_Y_MOVES_Rules): Add Tahoma `s'. + (MIRP_CVT_ZERO_Rules): Remove Verdana. + (ALWAYS_SKIP_DELTAP_Rules): Add Russian char 0x438. + (COMPATIBLE_WIDTHS_Rules): Rearrange some rules. + (X_SCALING_Rules): Adjust Verdana `a' at 12 and 13 ppem. + + * src/truetype/ttsubpix.c: Updated. + (sph_set_tweaks): Re-execute fpgm always. + +2012-06-28 Gilles Espinasse + + Fix CFLAGS and LDFLAGS share configure test. + + * builds/unix/configure.raw: Fix typo. + +2012-06-28 Werner Lemberg + + [truetype] Set the `subpixel_positioned' flag unconditionally. + + This is how the code currently behaves. + + * src/truetype/ttgload.c (tt_loader_init): Do it. + +2012-06-27 Werner Lemberg + + Fix conditional compilation. + + * src/base/basepic.c: Use FT_CONFIG_OPTION_MAC_FONTS. + +2012-06-27 Werner Lemberg + + Fix conditional compilation. + + * include/freetype/internal/ftcalc.h (FT_MulDiv_No_Round): Don't + enclose with `TT_USE_BYTECODE_INTERPRETER'; we now need the function + elsewhere also. + + * src/autofit/afcjk.h: Use AF_CONFIG_OPTION_CJK. + + * src/truetype/ttgload.c (tt_loader_init): Fix compiler warning. + + * src/truetype/ttinterp.c (Ins_MSIRP): Fix compiler warning. + + * src/truetype/ttinterp.h: Use + TT_CONFIG_OPTION_BYTECODE_INTERPRETER. + +2012-06-26 Infinality + + [truetype] Remove unused rounding functionality. + + The subpixel hinting patch contained the concept of an adjustable + number of gridlines per pixel. This is no longer used due to x + being completely ignored instead. This will return some of the + code to its existing state prior to the original Infinality + commit. + + * include/freetype/internal/ftobjs.h (FT_PIX_FLOOR_GRID, + FT_PIX_ROUND_GRID, FT_PIX_CEIL_GRID): Removed. + + * src/truetype/ttinterp.c: Updated. + (Round_None, Round_To_Grid, Round_To_Half_Grid, Round_Down_To_Grid, + Round_Up_To_Grid, Round_To_Double_Grid, Round_Super, Round_Super_45, + SetSuperRound): Remove parameter to handle the number of grid lines per + pixel. + (SET_SuperRound, ROUND_None, CUR_Func_round): Updated. + (DO_SROUND, DOS45ROUND, DO_ODD, DO_EVEN): Updated. + (DO_ROUND, DO_NROUND): Updated. + (Move_Zp2_Point, Ins_SHPIX, Ins_MSIRP, Ins_MDAP, Ins_MIAP, + Ins_MDRP, Ins_MIRP): Perform Round_None instead of calling a modified + rounding function. Remove gridlines_per_pixel. Create a local + variable to store control value cutin. Simplify the conditional for + ignore_x_mode. Adjust rounding calls to pass only two values. + +2012-06-25 Werner Lemberg + + [cff] Fix Savannah bug #36705. + + Handle numbers like 2.001 correctly. + + * src/cff/cffparse.c (cff_parse_real): Avoid negative values for + `shift'. + +2012-06-18 Infinality + + [truetype] Support subpixel hinting. + + This is the large, famous `Infinality' patch to support ClearType + bytecode which has been available from + http://www.infinality.net/blog/ for some time, and which has been + refined over the last years. While still experimental, it is now + mature enough to be included directly into FreeType. + + Most of the code is based on the ClearType whitepaper written by + Greg Hitchcock + + http://www.microsoft.com/typography/cleartype/truetypecleartype.aspx + + which gives a detailed overview of the necessary changes to the + Microsoft rasterizer so that older fonts are supported. However, a + lot of details are still missing, and this patches provides a + framework to easily handle rendering issues down to the glyph level + of certain fonts. + + Note that ClearType support is not completely implemented! In + particular, full support for the options `compatible_widths', + `symmetrical_smoothing, and `bgr' (via the GETINFO bytecode + instruction) is missing. + + * src/truetype/ttsubpix.c: New file, providing code to handle + `tweaks', this is, rules for certain glyphs in certain fonts + (including wildcards) which need a special treatment. + + * src/truetype/ttsubpix.h: New file, holding the tweaking rules. + + * include/freetype/config/ftoption.h, src/devel/ftoption.h + (TT_CONFIG_OPTION_SUBPIXEL_HINTING): New macro. + + * include/freetype/internal/ftobjs.h (FT_PIX_FLOOR_GRID, + FT_PIX_ROUND_GRID, FT_PIX_CEIL_GRID): New macros. + + * src/truetype/truetype.c [TT_USE_BYTECODE_INTERPRETER]: Include + `ttsubpix.c'. + + * src/truetype/ttgload.c: Include `ttsubpix.h'. + [All changes below are guarded by TT_CONFIG_OPTION_SUBPIXEL_HINTING.] + + (tt_get_metrics): Set tweak flags. + (TT_Hint_Glyph): Call `FT_Outline_EmboldenXY' if necessary. + (TT_Process_Simple_Glyph): Compensate emboldening if necessary. + (compute_glyph_metrics): Handle `compatible widths' option. + (tt_loader_init): Handle ClearType GETINFO information bits. + + * src/truetype/rules.mk (TT_DRC_SRC): Updated. + + * src/truetype/ttinterp.c: Include `ttsubpix.h'. + [Where necessary, changes below are guarded by + TT_CONFIG_OPTION_SUBPIXEL_HINTING.] + + (Direct_Move, Direct_Move_X): Extended. + (Round_None, Round_To_Grid, Round_To_Half_Grid, Round_Down_To_Grid, + Round_Up_To_Grid, Round_To_Double_Grid, Round_Super, Round_Super_45, + SetSuperRound): Add parameter to handle the number of grid lines per + pixel. + (SET_SuperRound, ROUND_None, CUR_Func_round): Updated. + (DO_SROUND, DOS45ROUND, DO_ODD, DO_EVEN): Updated. + (DO_ROUND, DO_NROUND): Updated. + (DO_RS): Take care of `Typeman' bytecode patterns. + (Ins_FDEF): Add some debugging code. Commented out. + (Ins_ENDF): Restore state. + (Ins_CALL, Ins_LOOPCALL): Handle inline delta functions. + (Ins_MD): Handle `Vacuform' rounds. + (Move_Zp2_Point, Ins_SHPIX, Ins_MSIRP, Ins_MDAP, Ins_MIAP, + Ins_MDRP, Ins_MIRP): Handle tweaks. + (Ins_ALIGNRP): Add tweak guard. + (Ins_IUP, Ins_DELTAP): Handle tweaks. + (Ins_GETINFO): Handle new ClearType bits. + (TT_RunIns): Handle tweaks. + + * src/truetype/ttinterp.h: Updated. + (SPH_TweakRule, SPH_ScaleRule): New structures for tweaks. + (TT_ExecContextRec): Add members for subpixel hinting support. + + * src/truetype/ttobjs.h (TT_DefRecord): Add `inline_delta' member. + 2012-06-15 Werner Lemberg * Version 2.4.10 released. @@ -181,7 +1311,7 @@ 2012-03-14 Werner Lemberg - Fix Savannah bug #35833. + [type1] Fix Savannah bug #35833. Based on the patch given in the bug report. @@ -1190,7 +2320,7 @@ 2011-09-27 Simon Bünzli - Fix Savannah bug #34189. + [type1] Fix Savannah bug #34189. * src/type1/t1load.c (T1_Open_Face): Initialize `face->len_buildchar'. @@ -1271,7 +2401,7 @@ 2011-09-07 Werner Lemberg - Fix Savannah bug #33816. + [cff] Fix Savannah bug #33816. * src/cff/cfftypes.h (CFF_FontRecDictRec): New member `has_font_matrix'. @@ -1333,7 +2463,7 @@ 2011-08-09 Werner Lemberg - Fix Savannah bug #33975. + [cff] Fix Savannah bug #33975. * src/cff/cffparse.c (cff_parse_font_matrix): Fix typo. @@ -1465,7 +2595,7 @@ 2011-07-02 Just Fill Bugs - Fix Savannah bug #33246. + [truetype] Fix Savannah bug #33246. * src/truetype/ttobjs.c (tt_check_single_notdef): New function. (tt_face_init): Use it to test FT_FACE_FLAG_SCALABLE. @@ -1579,7 +2709,7 @@ 2011-06-29 Werner Lemberg - Fix Savannah bug #33663. + [bdf] Fix Savannah bug #33663. * src/bdf/bdflib.c (_bdf_parse_glyphs): Handle negative values for ENCODING correctly. @@ -2133,7 +3263,7 @@ 2011-04-13 Werner Lemberg - Fix Savannah bug #33047. + [psaux] Fix Savannah bug #33047. Patch submitted by anonymous reporter. @@ -2226,7 +3356,7 @@ 2011-03-07 Bram Tassyns - Fix Savannah bug #27988. + [cff] Fix Savannah bug #27988. * src/cff/cffobjs.c (remove_style): New function. (cff_face_init): Use it to strip off the style part of the family @@ -3058,14 +4188,14 @@ 2010-10-12 Werner Lemberg - Fix Savannah bug #31310. + [truetype] Fix Savannah bug #31310. * src/truetype/ttgxvar.c (ft_var_readpackedpoints): Protect against invalid `runcnt' values. 2010-10-08 Chris Liddell - Fix Savannah bug #31275. + [sfnt] Fix Savannah bug #31275. * src/sfnt/ttpost.c: Include FT_INTERNAL_DEBUG_H. @@ -3124,7 +4254,7 @@ 2010-10-02 Werner Lemberg - Fix Savannah bug #31088 (sort of). + [sfnt] Fix Savannah bug #31088 (sort of). * src/sfnt/ttload.c (tt_face_load_maxp): Always allocate at least 64 function entries. @@ -3140,7 +4270,7 @@ 2010-10-01 suzuki toshiya - Fix Savannah bug #31040. + [truetype] Fix Savannah bug #31040. * src/truetype/ttinterp.c (free_buffer_in_size): Remove. (TT_RunIns): Updated. @@ -3374,7 +4504,7 @@ 2010-08-17 Teijo Kinnunen - Fix Savannah bug #30788. + [cache] Fix Savannah bug #30788. * src/cache/ftccache.c (FTC_Cache_Clear): Check `cache->buckets' for NULL too. @@ -3451,7 +4581,7 @@ 2010-08-05 Werner Lemberg - Fix Savannah bug #30657. + [truetype] Fix Savannah bug #30657. * src/truetype/ttinterp.c (BOUNDSL): New macro. Change `BOUNDS' to `BOUNDSL' where appropriate. @@ -3461,7 +4591,7 @@ 2010-08-05 Werner Lemberg - Fix Savannah bug #30656. + [type42] Fix Savannah bug #30656. * src/type42/t42parse.c (t42_parse_sfnts): Protect against negative string_size. @@ -3660,7 +4790,7 @@ 2010-07-08 Werner Lemberg - Fix Savannah bug #30361. + [truetype] Fix Savannah bug #30361. * src/truetype/ttinterp.c (Ins_IUP): Fix bounds check. @@ -3781,7 +4911,7 @@ 2010-06-30 Werner Lemberg - Fix Savannah bug #30263. + [smooth] Fix Savannah bug #30263. * src/smooth/ftgrays.c (gray_render_span): Use cast to `unsigned int' to avoid integer overflow. @@ -3872,7 +5002,7 @@ 2010-06-26 Werner Lemberg - Fix Savannah bug #30262. + [sfnt] Fix Savannah bug #30262. * src/sfnt/ttload.c (tt_face_load_maxp): Limit `maxComponentDepth' arbitrarily to 100 to avoid stack exhaustion. @@ -3889,14 +5019,14 @@ 2010-06-25 Werner Lemberg - Fix Savannah bug #30261. + [pfr] Fix Savannah bug #30261. * src/pfr/pfrobjs.c (pfr_face_init): Reject fonts which contain neither outline nor bitmap glyphs. 2010-06-25 Werner Lemberg - Fix Savannah bug #30254. + [cff] Fix Savannah bug #30254. * src/cff/cffload.c (cff_index_get_pointers): Do sanity check for first offset also. @@ -3911,7 +5041,7 @@ 2010-06-24 Werner Lemberg - Fix Savannah bug #30247. + [pcf] Fix Savannah bug #30247. * src/pcf/pcfread.c (pcf_get_metrics): Disallow (invalid) fonts with zero metrics. @@ -3928,14 +5058,14 @@ 2010-06-24 Werner Lemberg - Fix Savannah bug #30236. + [sfnt] Fix Savannah bug #30236. * src/sfnt/ttcmap.c (tt_face_build_cmaps): Improve check for pointer to `cmap_table'. 2010-06-24 Werner Lemberg - Fix Savannah bug #30235. + [pfr] Fix Savannah bug #30235. * src/pfr/pfrgload.c (pfr_glyph_load_simple): Protect against invalid indices if there aren't any coordinates for indexing. @@ -3951,7 +5081,7 @@ 2010-06-23 Werner Lemberg - Fix Savannah bug #30220. + [bdf] Fix Savannah bug #30220. * include/freetype/fterrdef.h (BDF_Err_Missing_Fontboundingbox_Field): New error code. @@ -3963,21 +5093,21 @@ 2010-06-21 Werner Lemberg - Fix Savannah bug #30168. + [pfr] Fix Savannah bug #30168. * src/pfr/pfrgload.c (pfr_glyph_load_compound): Limit the number of subglyphs to avoid endless recursion. 2010-06-20 Werner Lemberg - Fix Savannah bug #30145. + [psaux] Fix Savannah bug #30145. * src/psaux/psobjs.c (t1_builder_add_contour): Protect against `outline == NULL' which might happen in invalid fonts. 2010-06-19 Werner Lemberg - Fix Savannah bug #30135. + [bdf] Fix Savannah bug #30135. * src/bdf/bdflib.c (_bdf_list_join): Don't modify value in static string `empty'. @@ -3985,14 +5115,14 @@ 2010-06-15 Werner Lemberg - Fix Savannah bug #30108. + [autofit] Fix Savannah bug #30108. * src/autofit/afglobal.c (af_face_globals_compute_script_coverage): Properly mask AF_DIGIT bit in comparison. 2010-06-11 Werner Lemberg - Fix Savannah bug #30106. + [pshinter] Fix Savannah bug #30106. Point numbers for FreeType's implementation of hinting masks are collected before the final number of points of a glyph has been @@ -4021,14 +5151,14 @@ 2010-06-09 Werner Lemberg - Fix Savannah bug #30082. + [cff] Fix Savannah bug #30082. * src/cff/cffgload.c (cff_decoder_parse_charstrings) : Protect against stack underflow. 2010-06-08 Werner Lemberg - Fix Savannah bug #30053. + [cff] Fix Savannah bug #30053. * src/cff/cffparse.c (cff_parse_real): Handle border case where `fraction_length' has value 10. @@ -4074,7 +5204,7 @@ 2010-05-21 Bram Tassyns - Fix Savannah bug #27987. + [cff] Fix Savannah bug #27987. * src/cff/cffobjs.c (remove_subset_prefix): New function. (cff_face_init): Use it to adjust `cffface->family_name'. @@ -4110,7 +5240,7 @@ 2010-05-10 Ken Sharp - Fix Savannah bug #29846. + [psaux] Fix Savannah bug #29846. Previously we discovered fonts which used `setcurrentpoint' to set the initial point of a contour to 0,0. This caused FreeType to @@ -4129,9 +5259,9 @@ and real proper usage of the operator to work the same way as Adobe interpreters apparently do. - (t1_decoder_parse_charstrings): Make `setcurrentpoint' use the top - two elements of the stack to establish unconditionally the current x - and y coordinates. + * src/psaux/t1decode.c (t1_decoder_parse_charstrings): Make + `setcurrentpoint' use the top two elements of the stack to establish + unconditionally the current x and y coordinates. Make the `flex' subroutine handling (OtherSubr 0) put the current x,y coordinates onto the stack, instead of two dummy uninitialised @@ -4139,7 +5269,7 @@ 2010-04-14 Ken Sharp - Fix Savannah bug #29444. + [psaux] Fix Savannah bug #29444. * src/psaux/psobjs.c (t1_builder_start_point): Accept (invalid) `lineto' immediately after `hsbw', in accordance with Acrobat, GS, @@ -4147,21 +5277,21 @@ 2010-04-14 Michał Cichoń - Fix Savannah bug #27999. + [psaux] Fix Savannah bug #27999. * src/cache/ftcmanag.c (FTC_Manager_RemoveFaceID): Only remove selected entry, not all. 2010-04-06 Jonathan Kew - Add overflow check to `fvar' table. + [truetype] Add overflow check to `fvar' table. * src/truetype/ttgxvar.c (TT_Get_MM_Var): Check axis and instance count. 2010-04-05 Ken Sharp - Fix Savannah bug #29335. + [raster] Fix Savannah bug #29335. * src/raster/ftraster.c (Line_Up): Use slow multiplication to prevent overflow. This shouldn't have any serious impact on speed, @@ -4184,7 +5314,7 @@ 2010-04-01 John Tytgat - Fix Savannah bug #29404. + [truetype] Fix Savannah bug #29404. * src/truetype/ttgload.c: Revert change 2752bd1a (check on bit 1 of `head' table of TrueType fonts). @@ -4203,20 +5333,20 @@ 2010-03-11 Chris Liddell - Fix Savannah bug #27442. + [raster] Fix Savannah bug #27442. * src/raster/ftraster.c (ft_black_reset): Fix `buffer_size'. 2010-03-09 Werner Lemberg - Remove unused variable. + [cff] Remove unused variable. Reported by Graham. * src/cff/cffparse.c (cff_parse_real): Remove `rest'. 2010-03-02 John Tytgat - Improve CFF string (especially glyphname) lookup performance. + [cff] Improve CFF string (especially glyphname) lookup performance. We do this by avoiding memory allocation and file I/O. This is Savannah patch #7104. @@ -4283,7 +5413,7 @@ 2010-02-18 Chris Liddell - Fix Savannah bug #28905. + [truetype] Fix Savannah bug #28905. Initialize phantom points before calling the incremental interface to update glyph metrics. -- cgit v1.2.3