Branch :
| Author | Commit | Date | CI | Message |
|---|---|---|---|---|
| c149f739 | 2019-04-17 07:49:17 | [pcf] Fix handling of undefined glyph (#56067). This commit fixes the changes from 2018-07-21, which broke charmap iteration. We now add the default character as a new glyph with index 0, thus increasing the number of glyphs by one (as before). * src/pcf/pcfread.c (pcf_get_metrics): Adjust to new artificial glyph with index 0. Limit number of elements to 65534. (pcf_get_bitmaps): Ditto. Unify two loops into one; this avoids allocation of an intermediate array. (pcf_get_encodings): Don't flip indices but copy glyph metrics of default character to index 0. Also handle invalid default character. * docs/CHANGES: Updated. | ||
| ebe37508 | 2019-04-15 10:46:19 | * CMakeLists.txt: Avoid rewriting of unchanged configuration files. Reported as https://savannah.nongnu.org/patch/index.php?9755 | ||
| 8837ac26 | 2019-04-15 10:10:38 | * src/tools/apinames.c (main): Fix error message. Reported as https://savannah.nongnu.org/patch/?9796 | ||
| 01aed76c | 2019-04-14 09:39:28 | Minor. | ||
| 9e9bc9da | 2019-04-12 06:19:25 | Split off ChangeLog.29. | ||
| 1f271751 | 2019-04-11 23:48:21 | [smooth] Fix segfault in direct mode (#56092). * src/base/ftoutln.c (FT_Outline_Render): Set missing clip_box for direct mode. * src/smooth/ftgrays.c (gray_raster_render): Use it. | ||
| f0384d5f | 2019-04-09 11:01:24 | Minor. | ||
| 885b4c24 | 2019-04-06 07:07:37 | * src/sfnt/ttcmap.c (tt_get_glyph_name): Pacify compiler (#56061). This is for Visual Studio 2019 on ARM. | ||
| 74e9ca6d | 2019-04-06 06:51:08 | For distribution, replace `.tar.bz2' with `.tar.xz' bundles. * builds/toplevel.mk (build): Do it. * README, docs/CHANGES, docs/release: Updated. | ||
| 3ad1c93a | 2019-04-06 06:37:42 | Make `glyph_name' parameter to `FT_Get_Name_Index' a `const'. * include/freetype/freetype.h (FT_Get_Name_Index), include/freetype/internal/ftobjs.h (FT_Face_GetGlyphNameIndexFunc), include/freetype/internal/services/svgldict.h (FT_GlyphDict_NameIndexFunc), src/base/ftobjs.c (FT_Get_Name_Index), src/cff/cffdrivr.c (cff_get_name_index), src/sfnt/sfdriver.c (sfnt_get_name_index), src/type1/t1driver.c (t1_get_name_index), src/type42/t42drivr.c (t42_get_name_index): Add `const' to second argument. | ||
| 6986ddac | 2019-03-31 11:08:49 | [cff] Fix boundary checks. 642bc7590c701c8cd35a9f60fa899cfa518b17ff introduced dynamically allocated memory when parsing CFF files with the "old" engine. Bounds checks have never been updated, however, leading to pointless comparisons of pointers in some cases. This commit presents a solution for bounds checks in the CFF module with an extended logic for the "old" engine while staying as concise as possible for the "new" one. * src/cff/cffparse.h: Introduce the struct `CFF_T2_StringRec' and the additional field `t2_strings' within `CFF_ParserRec'. * src/cff/cffparse.c (cff_parser_within_limits): Move all boundary checks into this new function and update the rest of `cffparse.c' to use it. Reported as https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=12137 | ||
| fdb10e8b | 2019-03-21 13:51:59 | Improve link. | ||
| df266d3e | 2019-03-20 07:04:06 | [autofit] Fix Mongolian blue zone characters. * src/autofit/afblue.dat: Use U+200D (ZERO-WIDTH JOINER) characters to get medial forms for some Mongolian characters. * src/autofit/afblue.c, src/autofit/afblue.h: Regenerated. | ||
| dde03eec | 2019-03-19 10:50:38 | [autofit] Add support for Mongolian script. As a de-facto standard, layouts using this script are constructed horizontally line by line, then the lines are rotated clockwise for vertical display. * src/autofit/afblue.dat: Add blue zone data for Mongolian. * src/autofit/afblue.c, src/autofit/afblue.h: Regenerated. * src/autofit/afscript.h: Add Mongolian standard characters. * src/autofit/afranges.c, src/autofit/afstyles.h: Add Mongolian data. | ||
| fbbcf503 | 2019-03-15 07:27:02 | * Version 2.10.0 released. ========================== Tag sources with `VER-2-10-0'. * docs/VERSION.TXT: Add entry for version 2.10.0. * docs/CHANGES: Updated. * README, Jamfile (RefDoc), src/base/ftver.rc, builds/windows/vc2010/freetype.vcxproj, builds/windows/vc2010/index.html, builds/windows/visualc/freetype.dsp, builds/windows/visualc/freetype.vcproj, builds/windows/visualc/index.html, builds/windows/visualce/freetype.dsp, builds/windows/visualce/freetype.vcproj, builds/windows/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.9.1/2.10.0/, s/291/2100/. * include/freetype/freetype.h (FREETYPE_MINOR): Set to 10. (FREETYPE_PATCH): Set to 0. * builds/unix/configure.raw (version_info): Set to 23:0:17. * CMakeLists.txt (VERSION_MINOR): Set to 10. (VERSION_PATCH): Set to 0. * builds/toplevel.mk (version, winversion): Since the minor version number has two digits now, never omit the patch number. We would get ambiguous zip file names otherwise. (dist): Remove remnants of `docmaker' tool. (do-dist): Remove unused intermediate files. * src/cff/cffparse.c (destrict_c2s_item): Guard function with CFF_CONFIG_OPTION_OLD_ENGINE macro. | ||
| 4e64d9d3 | 2019-03-08 00:13:08 | CHANGES: Minor fixes. | ||
| 2f4b740c | 2019-03-07 09:42:25 | Fix invalid function pointer casts. This change should allow Freetype to work on WASM/Emscripten without needing `-s EMULATE_FUNCTION_POINTER_CASTS=1'. * src/autofit/afdummy.c (af_dummy_hints_apply): Fix signature. * src/cid/cidload.c (cid_parse_font_matrix, parse_fd_array, parse_expansion_factor, parse_font_name): Return `void', not `FT_Error'. * include/freetype/internal/ftobjs.h (FT_CMap_CharVarIsDefaultFunc): Fix signature. | ||
| 31757f96 | 2019-03-05 11:35:03 | [base] Handle numeric overflow (#55827). * src/base/ftglyph.c (FT_Glyph_Get_CBox): Use `FT_PIX_CEIL_LONG'. | ||
| 6a4718a3 | 2019-03-05 17:25:19 | Fix use of uninitialized memory. * src/psaux/psintrp.c (cf2_interpT2CharString): The call to `cf2_arrstack_setCount' may fail because the allocator ran out of memory. When this happens the stack is still written to before the error condition is checked. This means that FreeType writes outside of allocated memory. This commit moves the error check prior to the stack assignment, hence the function now properly returns with an error condition. | ||
| 6d65c60f | 2019-03-02 16:05:51 | Minor formatting. | ||
| bf04c592 | 2019-02-25 06:32:26 | Minor doc fixes. | ||
| 4d51f78d | 2019-02-23 11:21:48 | More documentation updates. In particular, mark the new behaviour of `FT_LOAD_COLOR' as experimental. | ||
| 6ab36880 | 2019-02-23 11:18:39 | * src/base/ftbitmap.c (FT_Bitmap_Blend): No fractional offsets. The function only provided a framework without an actual implementation, which this commits removes. | ||
| 75859970 | 2019-02-23 10:07:09 | Update all copyright notices. | ||
| fd8fc64e | 2019-02-23 10:05:37 | * src/tools/update-copyright-year: Insert `(C)'. | ||
| b77826e1 | 2019-02-21 10:23:15 | Triage 8ea854bfe92443706d55656072f891ec8f2cb3c2. | ||
| 8ea854bf | 2019-02-21 10:14:57 | [truetype] Mask numeric overflows. * src/truetype/ttinterp.c (Move_CVT, Move_CVT_Stretched, Ins_MIRP): Mask numeric overflows. Reported as https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11681 https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11734 | ||
| 5e3a38b1 | 2019-02-21 10:04:28 | [psaux] Mask numeric overflow. * src/psaux/cffdecode.c (cff_decoder_parse_charstrings): Mask numeric overflow. Reported as https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=13041 | ||
| a346abc0 | 2019-02-21 09:19:09 | s/`....`/'....'/ for SFNT table tags in documentation. | ||
| 8de11f3d | 2019-02-20 16:18:40 | s/NULL/`NULL`/ in documentation. | ||
| f92fa393 | 2019-02-20 16:04:48 | Minor documentation fixes. | ||
| de8de1ce | 2019-02-20 12:48:36 | Minor (whitespace, spelling, doc update). | ||
| 0ac69211 | 2019-02-16 07:05:39 | * src/autofit/afwarp.h (af_warper_compute): Fix declaration. | ||
| 29b302ad | 2019-02-16 07:05:24 | Minor. | ||
| b66d6a91 | 2019-02-06 07:38:25 | CHANGES: Document recent metrics change from Nikolaus. | ||
| a6feefdf | 2019-02-02 15:50:57 | [truetype] Apply MVAR hasc, hdsc and hlgp metrics to current FT_Face metrics. Instead of setting typo or win metrics as the new FT_Face metrics indiscriminately, apply only typo deltas to the currently active FT_Face metrics. This prevents line height differences when e.g. the default outlines were used as the regular face and instances for everything else. * src/truetype/ttgxvar.c (tt_apply_mvar): Implement. | ||
| f72b0074 | 2019-02-02 15:45:31 | [sfnt] Use typo metrics if OS/2 fsSelection USE_TYPO_METRICS bit is set. If the OS/2 table exists and fsSelection bit 7 (USE_TYPO_METRICS) is set, use the sTypo* set of values to compute the FT_Face's ascender, descender and height. Otherwise, fall back to old behavior. * src/sfnt/sfobjs.c (sfnt_load_face): Implement. | ||
| f686ad46 | 2019-01-22 20:31:44 | Update copyright years. | ||
| f61f49fe | 2019-01-18 13:25:23 | [sfnt] Handle TT fonts having two PostScript font names (#55471). * src/sfnt/sfdriver.c (sfnt_get_name_id): Prefer English over any other language found for PostScript font names. | ||
| 1e7a8f30 | 2019-01-08 20:54:13 | [psaux, type1] Align tracing. | ||
| b75abeb5 | 2019-01-08 20:51:39 | [psaux] Fix closepath (#55414). All of the Type 1 path building is done with code common to the revised CFF engine, with the exception of closepath, which was still calling ps_builder_close_contour(), thus previously cached segments were not always written to the path, and glyph corruption, or even invalid outlines were possible. * src/psauc/psinterp.c (cf2_interpT2CharString) <cf2_cmdCLOSEPATH>: Switch to calling `cf2_glyphpath_closeOpenPath'. | ||
| 2875ada1 | 2018-12-30 20:02:08 | Minor documentation fix. | ||
| b89166cc | 2018-12-29 08:55:01 | * src/autofit/aflatin2.c: Some fixes from `aflatin.c' (#55310). | ||
| 02382375 | 2018-12-26 12:02:10 | * builds/mac/README: Fix a hyperlink to defunct www.gyve.org. | ||
| afa043de | 2018-12-25 22:44:05 | Fix links (mostly http -> https). | ||
| 5e029659 | 2018-12-25 19:24:06 | * src/psaux/cffdecode.c (cff_operaor_seac): Fix numeric overflow. Reported as https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11915 | ||
| ec439711 | 2018-12-12 19:59:42 | [gxvalid] Fix compiler warnings. * src/gxvalid/gxvjust.c (gxv_just_check_max_gid), src/gxvalid/gxvmort.c (gxv_mort_coverage_validate): Use `FT_UNUSED'. | ||
| e8bbef85 | 2018-12-12 14:05:03 | Fix documentation of TrueType bytecode interpreter debug hook. | ||
| 2b4e61e4 | 2018-12-12 09:36:39 | Minor documentation fixes. | ||
| 3e8a2283 | 2018-12-11 23:54:17 | * src/truetype/ttgload.c (TT_Hint_Glyph): Remove useless test. `control_len' only gets its value from `n_ins' (and vice versa), which is always read as `unsigned short' and thus can't be larger than 0xFFFF. | ||
| 0c83ba6d | 2018-12-10 12:11:54 | Minor documentation updates and fixes. | ||
| d01e28f4 | 2018-12-06 08:12:27 | Important doc fix. | ||
| f1b6183f | 2018-12-04 11:51:15 | [bdf] Ignore data after `ENDFONT'. Reported as https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=10798 * src/bdf/bdflib.c (_bdf_parse_end): New function. (_bdf_parse_glyphs): Switch to `_bdf_parse_end' after `ENDFONT' has been encountered. | ||
| 456e9c8f | 2018-12-02 23:40:55 | * builds/windows/visualc/freetype.dsp: Dust off. | ||
| c1e58b4d | 2018-11-29 12:57:35 | * include/freetype/ftmm.h: Minor. | ||
| 3dd4e76b | 2018-11-27 23:22:52 | * builds/windows/vc2010/freetype.vcxproj: Simplify. | ||
| 78a1e695 | 2018-11-27 22:24:06 | [type1,cff] Add FT_{Set,Get}_MM_WeightVector API calls. For multiple master fonts, common usage (in Postscript) is to modify the WeightVector of an existing font instance, this addition supports that use. * include/freetype/ftmm.h, src/base/ftmm.c (FT_Set_MM_WeightVector, FT_Get_MM_WeightVector): New API functions. * include/freetype/internalservices/svmm.h (FT_Set_MM_WeightVector_Func, FT_Get_MM_WeightVector_Func): New function types. (MultiMasters): Add `set_mm_weightvector' and `get_mm_weightvector' members. (FT_DEFINE_SERVICE_MULTIMASTERSREC): Updated. * src/cffcffdrivr.c (cff_set_mm_weightvector, cff_get_mm_weightvector): New functions. (cff_service_multi_masters): Register them. * src/truetype/ttdriver.c (tt_service_gx_multi_masters): Updated. This driver doesn't use the new interface. * src/type1/t1load.c (T1_Set_MM_WeightVector, T1_Get_MM_WeightVector): New functions. * src/type1/t1driver.c (t1_service_multi_masters): Register them. * src/type1/t1load.h: Updated. | ||
| 1fc6937f | 2018-11-27 18:02:44 | [cff] Fix compiler warning (#55105). * src/cff/cffparse.c (cff_parser_run): Guard label only used if CFF_CONFIG_OPTION_OLD_ENGINE is active. | ||
| 74cdd75f | 2018-11-27 17:55:40 | [truetype] Fix numeric overflow (#55103). * src/truetype/ttgload.c (compute_glyph_metrics): Use `SUB_LONG'. | ||
| 1c4004bb | 2018-11-25 23:19:39 | [builds] Belated DLL support with vc2002-vc2008. The solution and project files should be automatically upgraded for the approriate Visual C++ version. * builds/windows/visualc/freetype.{sln,vcproj}: Major upgrades. * builds/windows/visualc/index.html: Document the change. * builds/windows/vc2005, builds/windows/vc2008: Removed as redundant. | ||
| 55b35cd6 | 2018-11-22 11:43:48 | * src/cff/cffparse.c: Please the compiler. | ||
| 642bc759 | 2018-11-22 10:29:35 | [cff] Fix memory overflow. Reported as https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=9869 https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=10869 * src/cff/cffparse.c (destruct_t2s_item, cff_parser_run): Store evaluated T2 charstrings in separately allocated memory. | ||
| 81f43a9d | 2018-11-18 14:47:32 | * builds/windows/{visualc,vc2005,vc2008}/freetype.vcproj: Fix it. | ||
| 8d517e67 | 2018-11-10 15:47:48 | Clarification. | ||
| 78db9eec | 2018-11-10 15:39:19 | [smooth] Placeholder only for library-enabled LCD filtering. * src/smooth/ftsmooth.c (ft_smooth_init): Add disabled `FT_Library_SetLcdFilter' call. | ||
| 58e48e92 | 2018-11-09 12:14:35 | [psaux] Add safety guard (#54985). * src/psaux/psobjs.c (cff_builder_close_contour): Do it. | ||
| 3b6e65f7 | 2018-11-08 23:36:37 | * builds/unix/configure.raw: Require `windows.h' for windres. | ||
| 181033d3 | 2018-11-08 21:04:56 | [ftstroke] Fix unpredictable failures (#54986). * src/base/ftstroke.c (ft_sroke_border_lineto): Fix lineto check. | ||
| 81c31f62 | 2018-11-08 07:54:47 | [ftstroke] Fix unpredictable failures (#54976). * src/base/ftstroke.c (ft_sroke_border_close): Set the start tags. | ||
| fb0d66d0 | 2018-11-07 00:47:44 | [truetype] Fix VF check from 2018-09-12 (#54973). * src/truetype/ttgxvar.c (TT_Vary_Apply_Glyph_Deltas): Use correct offsets for estimates. | ||
| fbd24523 | 2018-11-06 11:15:31 | [pshinter] Fix numeric overflow. Reported as https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11242 * src/pshinter/pshrec.c (ps_dimension_add_t1stem): Implement it. | ||
| 5b86f53d | 2018-11-06 11:08:41 | [psaux] Fix timeout in old CFF engine. Reported as https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11260 * src/psaux/cffdecode.c (cff_decoder_parse_charstrings) <cff_op_sqrt> [CFF_CONFIG_OPTION_OLD_ENGINE]: Fix potential endless loop. | ||
| cc288e38 | 2018-11-04 22:09:16 | Minor. | ||
| 1f43affc | 2018-11-04 13:11:16 | * src/truetype/ttgxvar.c: Use enum definitions. | ||
| d95a12b8 | 2018-11-03 23:02:58 | * src/truetype/ttgxvar.c (ft_var_apply_tuple): Adjust condition. | ||
| 547f82f2 | 2018-11-03 23:00:36 | * src/truetype/ttgxvar.c (ft_var_apply_tuple): Tracing tweaks. | ||
| ce3feb0b | 2018-11-03 22:43:21 | Revert due to specs: [truetype] Speed up variation IUP. This reverts commit 1e4496c54c010843c1bac56e5d344115d1a49620. | ||
| dfa86d65 | 2018-11-03 22:36:52 | Revert "[truetype] Speed up variation IUP." This reverts commit 1e4496c54c010843c1bac56e5d344115d1a49620. | ||
| 61d50756 | 2018-11-02 20:42:25 | * src/truetype/ttgxvar.c (ft_var_get_item_delta): Fixed logic. Reported and tested by Behdad. | ||
| 339c451a | 2018-11-02 10:10:10 | [autofit] Prevent SEGV. See https://bugs.ghostscript.com/show_bug.cgi?id=697545 for more details on how the bug was found. * src/autofit/afloader.c (af_loader_load_glyph): Propagate error code. | ||
| 1e4496c5 | 2018-10-31 23:17:33 | [truetype] Speed up variation IUP. * src/truetype/ttgxvar.c (tt_delta_interpolate): Separate trivial snapping to the same position from true interpolation. | ||
| ba03310b | 2018-10-31 22:01:36 | * src/type1/t1load.c (t1_set_mm_blend): Optimized. | ||
| 300da33d | 2018-10-31 21:55:40 | * src/truetype/ttgxvar.c (ft_var_get_item_delta): Optimized. | ||
| c13635ee | 2018-10-29 21:25:10 | [base] Fix numeric overflow. Reported as https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11080 * src/base/ftoutln.c (FT_Outline_Get_Orientation): Use `MUL_LONG'. | ||
| ba62f9d8 | 2018-10-29 21:11:36 | [cff] Fix numeric overflow. Reported as https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=10988 * src/cff/cffparse.c (cff_parser_run) [CFF_CONFIG_OPTION_OLD_ENGINE]: Use `NEG_LONG'. | ||
| acb19ed4 | 2018-10-28 14:19:33 | Comment on timestamp storage. | ||
| 3e8ec291 | 2018-10-26 23:23:48 | [sfnt] Make `head' timestamps unsigned. It's been more than 2^31 seconds since 1904. * include/freetype/tttables.h (TT_Header): Change field types. * src/sfnt/ttload.c (tt_face_load_generic_header): Updated. | ||
| d71f2bc1 | 2018-10-26 22:52:25 | Revert "Align FreeType with standard C memory management." This reverts commit 877aa1b2cc662978aae61ed4d5c6ea8ba56b2fe7. | ||
| bfe53294 | 2018-10-27 00:07:53 | [psaux] Fix numeric overflow. Triggered by https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11157 * src/psaux/cffdecode.c (cff_decoder_parse_charstrings) <cff_op_blend> [CFF_CONFIG_OPTION_OLD_ENGINE]: Fix integer overflow. | ||
| f56830ed | 2018-10-20 07:27:47 | Avoid endless loop while tracing (#54858). * src/type1/t1load.c (parse_buildchar): Guard tracing stuff with FT_DEBUG_LEVEL_TRACE. | ||
| 0c4feb72 | 2018-10-17 11:25:32 | * CMakeLists.txt: Specify `RUNTIME DESTINATION'. This is needed for DLL builds. | ||
| 42885493 | 2018-10-10 12:21:10 | Minor. | ||
| 912e174c | 2018-10-07 09:28:52 | A missing Unicode cmap is not a fatal error. This is a follow-up to the previous commit. * src/cff/cffobjs.c (cff_face_init), src/sfnt/sfobjs.c (sfnt_load_face), src/type1/t1objs.c (T1_Face_Init), src/type42/t42objs.c (T42_Face_Init): Implement it. | ||
| 885f5b0b | 2018-10-07 09:03:05 | Fix handling of FT_CONFIG_OPTION_ADOBE_GLYPH_LIST (#54794). * src/cff/cffcmap.c (cff_cmap_unicode_init), src/psaux/t1cmap.c (t1_cmap_unicode_init), src/sfnt/ttcmap.c (tt_cmap_unicode_init): Check `unicodes_init' field. | ||
| 0a178144 | 2018-10-07 08:59:56 | Whitespace. | ||
| f262d15d | 2018-10-07 07:40:37 | Minor comment improvement. | ||
| 9817571c | 2018-10-03 08:04:55 | [ftgrays] Fix typo in stand-alone mode (#54771). * src/smooth/ftgrays.c (FT_THROW) [STANDALONE_ && FT_DEBUG_LEVEL_TRACE]: Fix call to `FT_ERR_CAT'. | ||
| d280ae1e | 2018-10-02 20:45:16 | [psaux] Fix segfault. Reported as https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=10768 * src/psaux/cffdecode.c (cff_decoder_parse_charstrings) <cff_op_callothersubr> [CFF_CONFIG_OPTION_OLD_ENGINE]: Check argument. | ||
| 6b660f12 | 2018-10-02 16:48:59 | [psaux] Fix numeric overflow. Reported as https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=10768 * src/psaux/cffdecode.c (cff_decoder_parse_charstrings) <cff_op_roll> [CFF_CONFIG_OPTION_OLD_ENGINE]: Use NEG_INT. | ||
| 83fc524d | 2018-10-02 16:36:49 | [pshinter] Handle numeric overflow. Reported as https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=10550 * src/pshinter/pshglob.c (psh_blues_snap_stem): Mask numeric overflow. |