Werner Lemberg
10e54d04b9
[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.
2018-09-13 21:47:35 +02:00
Werner Lemberg
7665914ccd
* src/sfnt/sfdriver.c (sfnt_get_var_ps_name): Fix last commit.
2018-09-13 08:58:49 +02:00
Werner Lemberg
a5818ed1e1
* src/sfnt/sfdriver.c (sfnt_get_var_ps_name): Check `result'.
...
Reported as
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=10316
2018-09-13 08:46:44 +02:00
John Tytgat
6b53300b01
[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.
2018-09-12 08:08:09 +02:00
Werner Lemberg
65681e6dc1
[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'.
2018-09-12 07:40:49 +02:00
Werner Lemberg
53c5e4bd87
* src/truetype/ttgxvar.c (ft_var_load_gvar): Check `glyphoffsets'.
2018-09-12 07:27:30 +02:00
Armin Hasitzka
7b855ed9cf
* src/pshinter/pshrec.c (t2_hints_stems): Mask numeric overflow.
...
Reported as
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=10215
2018-09-10 23:41:04 +01:00
Werner Lemberg
fea435fbf8
[sfnt] Comment improvement.
2018-09-09 09:46:29 +02:00
Ben Wagner
0805c4a488
* builds/freetype.mk (refdoc-venv): Ensure python version ( #54631 ).
2018-09-09 09:25:58 +02:00
Werner Lemberg
7bf2028250
Typo.
2018-09-07 06:43:19 +02:00
Werner Lemberg
1c04eed76f
[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.
2018-09-07 06:40:55 +02:00
Werner Lemberg
f8af8fba78
Synchronize `ftdebug.c' files.
...
* builds/amiga/src/base/ftdebug.c, builds/wince/ftdebug.c,
builds/windows/ftdebug.c: Synchronize with `src/base/ftdebug.c'.
2018-09-05 12:16:56 +02:00
Werner Lemberg
97c7944f9e
Synchronize `ftconfig' files.
2018-09-05 11:45:05 +02:00
Nikhil Ramakrishnan
a748ae4635
* docs/DOCGUIDE: Minor.
2018-09-05 11:12:01 +05:30
Nikhil Ramakrishnan
77aa02660e
Add documentation guidelines file.
...
* docs/DOCGUIDE: New file.
2018-09-05 11:07:20 +05:30
Werner Lemberg
48f93e648e
* devel/ftoption.h: Synchronize with master `ftoption.h'.
2018-09-04 21:19:26 +02:00
Werner Lemberg
c485bece6b
Typo ( #54618 ).
2018-09-04 21:05:06 +02:00
Werner Lemberg
9789c75b1a
More '...' vs. `...` fixes in API documentation.
2018-09-04 10:37:44 +02:00
Werner Lemberg
01a5d326bb
Make `/****...' comments in public headers uniformly end on column 77.
2018-09-04 08:00:58 +02:00
Alexei Podtelezhnikov
6a4229c4b0
* docs/DEBUG: s/trace_//.
2018-09-03 22:43:39 -04:00
Nikhil Ramakrishnan
7da5589c75
[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'.
2018-09-03 16:45:28 +05:30
Werner Lemberg
1061748256
include/freettype/config:*.*: Convert comments to Markdown syntax.
...
Also some minor documentation fixes.
2018-09-03 10:37:57 +02:00
Werner Lemberg
76a52465c1
*/*: s/PSNames/psnames/.
...
Only tracing messages are affected.
2018-09-03 09:08:47 +02:00
Werner Lemberg
475f6d25cb
[sfnt] Fix heap buffer overflow in CPAL handling.
...
* src/sfnt/ttcpal.c (tt_face_palette_set): Fix boundary test.
(tt_face_load_cpal): Updated.
2018-09-03 09:00:58 +02:00
Werner Lemberg
9be656bb0c
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.
2018-09-01 11:04:58 +02:00
Alexei Podtelezhnikov
809d5125af
* src/base/ftobjs.c (ft_glyphslot_preset_bitmap): Check glyph format.
2018-08-31 22:49:19 -04:00
Armin Hasitzka
4b49a8079f
[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.
2018-08-31 20:26:46 +01:00
Werner Lemberg
c6df41e319
Whitespace.
2018-08-31 20:10:38 +02:00
Werner Lemberg
9a323e4762
* src/base/ftdebug.c (FT_Throw): Restore missing `FT_UNUSED' calls.
2018-08-31 20:09:21 +02:00
Werner Lemberg
aff04e91f6
* src/base/ftdebug.c (FT_Throw): Reduce chattiness.
2018-08-31 14:57:36 +02:00
Werner Lemberg
83525bdd10
Minor comments.
2018-08-31 07:37:15 +02:00
Werner Lemberg
d91f752b77
Whitespace.
2018-08-31 07:34:30 +02:00
Werner Lemberg
423fce2e3e
Add link to OpenType's composite glyph description.
2018-08-31 06:59:44 +02:00
Werner Lemberg
0d4ca13865
* src/autofit/afhints.c (af_glyph_hints_reload): Add initialization.
2018-08-31 06:53:52 +02:00
Alexei Podtelezhnikov
1dacbd893d
Consolidate bitmap presetting and size assessment.
...
* include/freetype/internal/ftobjs.h (ft_glyphslot_preset_bitmap):
Change return type.
* src/base/ftobjs.c (ft_glyphslot_preset_bitmap): Return the bitmap
size assessment.
* src/raster/ftrend1.c (ft_raster1_render): Use it to refuse the
rendering of enourmous or far-fetched outlines.
* src/smooth/ftsmooth.c (ft_smooth_render_generic): Ditto.
2018-08-30 23:28:30 -04:00
Alexei Podtelezhnikov
ca980b4cf1
* src/base/ftobjs.c (ft_glyphslot_preset_bitmap): Correct mono.
2018-08-30 21:51:18 -04:00
Armin Hasitzka
35efb103fe
[errors] Introduce a macro to control `FT_Error_String'.
...
* devel/ftoption.h (FT_CONFIG_OPTION_ERROR_STRINGS),
include/freetype/config/ftoption.h (FT_CONFIG_OPTION_ERROR_STRINGS):
New macro.
2018-08-30 14:30:46 +02:00
Armin Hasitzka
d20dc3928b
[errors] Introduce `FT_Error_String'.
...
* include/freetype/fterrors.h (FT_Error_String),
src/base/fterrors.c (FT_Error_String): Implement `FT_Error_String'.
* src/base/ftbase.c, src/base/Jamfile (_source),
src/base/rules.mk (BASE_SRC): Add `fterrors.c' to the build logic.
* src/base/ftdebug.c (FT_Throw): Use `FT_Error_String'.
2018-08-30 14:09:04 +02:00
Werner Lemberg
c0ccf75012
[autofit] Trace `before' and `after' edges of strong points.
...
* src/autofit/afhints.h (AF_PointRec) [FT_DEBUG_AUTOFIT]: New arrays
`before' and `after'.
* src/autofit/afhints.c (af_get_strong_edge_index): New auxiliary
function.
(af_glyph_hints_dump_points): Trace `before' and `after' edges.
(af_glyph_hints_align_strong_points) [FT_DEBUG_AUTOFIT]: Set
`before' and `after' information.
2018-08-30 09:56:09 +02:00
Werner Lemberg
21c2b3905c
Minor.
2018-08-30 09:52:08 +02:00
Alexei Podtelezhnikov
5d93a3fc8d
[base] Overflow-resistant bitmap presetting.
...
* src/base/ftobjs.c (ft_glyphslot_preset_bitmap): Implement it.
2018-08-30 01:12:22 -04:00
Werner Lemberg
19be8620ec
Doc fix.
2018-08-29 18:15:03 +02:00
Armin Hasitzka
934a6159ba
Fix numeric overflows.
...
* src/pshint/pshalgo.c (psh_hint_align, psh_hint_align_light,
psh_hint_table_find_strong_points): Fix numeric overflows.
Reported as
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=10083
2018-08-29 15:28:21 +02:00
Werner Lemberg
14dff08f37
ftoption.h: s/precendence/precedence/ in documentation ( #54586 ).
2018-08-29 06:56:21 +02:00
Werner Lemberg
3915a18b8c
[cff] Fix handling of `roll' op in old engine.
...
Reported as
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=10080
* src/psaux/cffdecode.c (cff_decoder_parse_charstrings) <cff_op_roll>
[CFF_CONFIG_OPTION_OLD_ENGINE]: Use modulo for loop count, as
documented in the specification.
2018-08-29 06:53:54 +02:00
Werner Lemberg
2c8e6279a7
Minor doc fix.
2018-08-28 08:02:13 +02:00
Werner Lemberg
ae3afbc471
* src/truetype/ttobjs.c (tt_size_read_bytecode): Trace CVT values.
2018-08-26 15:40:16 +02:00
Werner Lemberg
2095772144
ChangeLog*: s/\t/ /.
2018-08-26 15:15:56 +02:00
Nikhil Ramakrishnan
f87b711746
* configure: Copy assets required by docwriter.
...
Copy directory `docs/reference/markdown' when FreeType is compiled in a
different directory.
Fixes `make refdoc' if builddir != srcdir.
Reported as
http://lists.nongnu.org/archive/html/freetype-devel/2018-08/msg00083.html
2018-08-26 17:46:25 +05:30
Werner Lemberg
13034e54aa
* src/pshint/pshalgo.c (psh_hint_overlap): Fix numeric overflow.
...
Reported as
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=10057
2018-08-26 12:22:51 +02:00