kc3-lang/freetype

Branch :


Log

Author Commit Date CI Message
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.
877aa1b2 2018-09-27 21:17:36 Align FreeType with standard C memory management. * include/freetype/ftsystem.h: Include FT_TYPES_H. (*FT_Alloc_Func, *FT_Realloc_Func): Use size_t for the size arguments. * src/raster/ftmisc.h: Ditto. * builds/amiga/src/base/ftsystem.c, builds/unix/ftsystem.c, * builds/vms/ftsystem.c, src/base/ftsystem.c (ft_alloc, ft_realloc): Use size_t for the size arguments. * src/base/ftdbgmem.c (ft_mem_debug_alloc, ft_mem_debug_realloc): Use FT_Offset, aka size_t, for the size arguments.
4500c701 2018-09-26 22:04:50 Typo.
efe7f648 2018-09-25 09:16:45 Typo.
a9af6914 2018-09-25 09:10:09 Fix handing of `FT_Bool'. Before this commit we had code like (FT_Bool)( globals->glyph_styles[gindex] & 0x8000) Since `FT_Bool' is defined to be an `unsigned char', the code evaluated to something like (unsigned char)( 0x8532 & 0x8000) which in turn expanded to (unsigned char)( 0x8000) and finally yielded 0x00 – i.e., false – not as expected. Problem reported and analyzed by Tony Smith <tony.smith@macro4.com>. * include/freetype/fttypes.h (FT_BOOL): Add a comparison against zero so that we always have a Boolean expression. */*: Replace castings to `FT_Bool' with calls to `FT_BOOL' where possible.
0f122fef 2018-09-23 21:46:26 [bdf] Speed up charmap access. This makes FT_Get_Char_Index and FT_Get_Next_Char 4-5 times faster. * src/bdf/bdfdrivr.c (bdf_cmap_char_{index,next}): Help binary search with continuous prediction.
793a9ff9 2018-09-22 14:38:00 * src/base/ftobjs.c (ft_glyphslot_reset_bimap): Another tweak. This one should be clearer. When the rounded monochrome bbox collapses we add a pixel that covers most if not all original cbox.
f26d5775 2018-09-21 20:34:58 * src/base/ftobjs.c (ft_glyphslot_reset_bimap): Further tweak.
abd997aa 2018-09-21 12:50:32 Improve documentation of `FT_LOAD_NO_RECURSE'.
335528e1 2018-09-21 11:26:37 Improve auto-hinter handling of bitmap fonts (#54681). For bitmap fonts, `FT_Load_Glyph' should either return an error or not set the format to `FT_GLYPH_FORMAT_OUTLINE'. However, in this case `FT_Load_Glyph' calls into the auto-hinter which calls back into `FT_Load_Glyph' with `FT_LOAD_NO_SCALE' in the flags, which marks the glyph as `FT_GLYPH_FORMAT_OUTLINE' with an empty path (even though it doesn't have any path). It appears that the auto-hinter should not be called when the face doesn't have outlines. The current test for using the auto-hinter in `FT_Load_Glyph' checks if the driver supports scalable outlines, but not if the face supports scalable outlines. * src/base/ftobjs.c (FT_Load_Glyph): Directly check whether we have scalable outlines.
c168cc3b 2018-09-21 11:09:27 [raster] Fix disappearing vertical lines (#54589). * src/raster/ftraster.c (Vertical_Sweep_Span): Handle special case where both left and right outline exactly pass pixel centers.
493aa68f 2018-09-21 08:32:22 [base] Some comments.
2a9850c4 2018-09-20 22:40:32 * src/base/ftobjs.c (ft_glyphslot_reset_bimap): Tiny rounding tweak. This adds pixels in case a contour goes through the center and they need to be turned on in the b/w rasterizer.
c1b21f47 2018-09-20 22:14:46 [pcf] Replace charmap implementation. PCF comes with charmap lookup table, aka PCF encodings. Using it directly makes FT_Get_Char_Index and FT_Get_Next_Char 4-5 times faster than the original BDF-like binary searches. * src/pcf/pcf.h (PCF_EncodingRec): Removed. (PCF_FaceRec): Remove `nencodings' and `encodings'. * src/pcf/pcfdrivr.c (pcf_cmap_char_{index,next}): Replaced. * src/pcf/pcfread.c (pcf_get_encodings): Store data differently.
8e950680 2018-09-20 06:26:34 [base] Remove unused function `FT_GlyphLoader_CopyPoints'. * include/freetype/internal/ftgloadr.h, src/base/ftgloadr.c (FT_GlyphLoader_CopyPoints): Do it.
7f93c977 2018-09-19 22:45:45 [pcf] Prepare to replace charmap implementation. * src/pcf/pcf.h (PCF_Face): Updated to include... (PCF_EncRec): ... this new structure to store charmap geometry. * src/pcf/pcfread.c (pcf_get_encodings): Store charmap geometry.
d629c2ba 2018-09-18 17:11:48 Remove unused fields. * src/pcf.h (PCF_FaceRec): Remove `charmap' and `charmap_handle'. * src/bdfdrvr.h (BDF_FaceRec): Ditto. * src/winfonts/winfnt.h (FNT_FaceRec): Ditto.
dfddc2d9 2018-09-17 08:03:57 [pshinter] Handle numeric overflow. Reported as https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=10396 * src/pshinter/pshglob.c: Include FT_INTERNAL_CALC_H. (psh_blues_snap_stems): Mask numeric overflow.
b8dd404d 2018-09-16 07:22:23 freetype.h: Add warning w.r.t. B/W hinting and rendering (#54589).
de0aabcd 2018-09-15 06:14:18 [sfnt] Comment fix.
10e54d04 2018-09-13 21:47:35 [truetype] Some fixes for VF checks. Reported as https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=10317 * src/truetype/ttgxvar.c (ft_var_load_gvar): Properly exit memory frame if we have invalid glyph variation data offsets. (tt_face_vary_cvt): Protect against missing `tuplecoords' array. Fix typo.
7665914c 2018-09-13 08:58:49 * src/sfnt/sfdriver.c (sfnt_get_var_ps_name): Fix last commit.
a5818ed1 2018-09-13 08:46:44 * src/sfnt/sfdriver.c (sfnt_get_var_ps_name): Check `result'. Reported as https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=10316
6b53300b 2018-09-12 08:08:09 [sfnt] Better PS name handling (#54629). * src/sfnt/sfdriver (IS_WIN, IS_APPLE): Omit language ID checks. (get_win_string, get_apple_string): Return NULL when the PostScript font name characters is not according to specification. (get_win_string): Make trace output work if the high byte if non-zero. (sfnt_get_var_ps_name, sfnt_get_ps_name): Previously we preferred Win PS name (when there is also an Apple PS name); change this into a fallback to Apple PS name in case the Win PS name is invalid.
65681e6d 2018-09-12 07:40:49 [truetype] Improve VF check. Triggered by https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=10255 * src/truetype/ttgxvar.c (ft_var_load_gvar): Use better limit check for `tupleCount'.
53c5e4bd 2018-09-12 07:27:30 * src/truetype/ttgxvar.c (ft_var_load_gvar): Check `glyphoffsets'.
7b855ed9 2018-09-10 23:41:04 * src/pshinter/pshrec.c (t2_hints_stems): Mask numeric overflow. Reported as https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=10215
fea435fb 2018-09-09 09:46:29 [sfnt] Comment improvement.
0805c4a4 2018-09-09 09:25:58 * builds/freetype.mk (refdoc-venv): Ensure python version (#54631).
7bf20282 2018-09-07 06:43:19 Typo.
1c04eed7 2018-09-07 06:40:55 [truetype] Fix assertion failure. Triggered by https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=10212 * src/truetype/ttgload.c (load_truetype_glyph): Reintroduce `opened_frame' (removed in a change from 2018-08-26) to handle dealloation of the second frame.
f8af8fba 2018-09-05 12:16:56 Synchronize `ftdebug.c' files. * builds/amiga/src/base/ftdebug.c, builds/wince/ftdebug.c, builds/windows/ftdebug.c: Synchronize with `src/base/ftdebug.c'.
97c7944f 2018-09-05 11:45:05 Synchronize `ftconfig' files.
a748ae46 2018-09-05 11:12:01 * docs/DOCGUIDE: Minor.
77aa0266 2018-09-05 11:07:20 Add documentation guidelines file. * docs/DOCGUIDE: New file.
48f93e64 2018-09-04 21:19:26 * devel/ftoption.h: Synchronize with master `ftoption.h'.
c485bece 2018-09-04 21:05:06 Typo (#54618).
9789c75b 2018-09-04 10:37:44 More '...' vs. `...` fixes in API documentation.
01a5d326 2018-09-04 08:00:58 Make `/****...' comments in public headers uniformly end on column 77.
6a4229c4 2018-09-03 22:43:39 * docs/DEBUG: s/trace_//.
7da5589c 2018-09-03 16:45:28 [docwriter] Don't break code snippets accross lines. Reported as http://lists.nongnu.org/archive/html/freetype-devel/2018-08/msg00124.html * docs/reference/markdown/stylesheets/extra.css (.md-typeset code): Add rule `white-space'.
10617482 2018-09-03 10:37:57 include/freettype/config:*.*: Convert comments to Markdown syntax. Also some minor documentation fixes.
76a52465 2018-09-03 09:08:47 */*: s/PSNames/psnames/. Only tracing messages are affected.
475f6d25 2018-09-03 09:00:58 [sfnt] Fix heap buffer overflow in CPAL handling. * src/sfnt/ttcpal.c (tt_face_palette_set): Fix boundary test. (tt_face_load_cpal): Updated.
9be656bb 2018-09-01 11:01:52 Remove `FT_Outline_{New,Done}_Internal'. These public API functions(!) were always undocumented and have escaped all clean-up efforts until now. * include/freetype/ftoutln.h (FT_Outline_New_Internal, FT_Outline_Done_Internal): Removed. * src/base/ftoutln.h (FT_Outline_New_Internal, FT_Outline_Done_Internal): Merge into... (FT_Outline_New, FT_Outline_Done): ... these functions. * docs/README: Updated.
809d5125 2018-08-31 22:49:19 * src/base/ftobjs.c (ft_glyphslot_preset_bitmap): Check glyph format.
4b49a807 2018-08-31 20:26:46 [errors] Refine the macro logic surrounding `FT_Error_String'. * include/freetype/fterrors.h (FT_INCLUDE_ERR_PROTOS, FT_ERR_PROTOS_DEFINED): Undefine `FT_INCLUDE_ERR_PROTOS' after checking it and introduce a new macro that takes proper care of multiple-inclusion protection.
c6df41e3 2018-08-31 20:10:38 Whitespace.