Commit Graph

23 Commits

Author SHA1 Message Date
Michiharu Ariza 28917e58f9 init interp_env_t::hintmask_size
fixes issue #1547
2019-01-18 09:43:51 -08:00
Michiharu Ariza 29f0b6bce7 CFF renaming (#1507)
* reimplement ByteStr as byte_str_t based on hb_ubytes_t

Unuse start_embed<ByteStr>
Also renamed SubByteStr to byte_str_ref_t
More renaming to come

* substr renamed to str_ref in line with its type byte_str_ref_t

* uncamelize non-table struct names

* uncamelized non-struct types OpCode etc

* add byte_str_t copy ctor

* test

* test2

* undo tests

* fix bot failure

* undo the previous change

* fixed tabs, added inline

* Revert "fixed tabs, added inline"

This reverts commit 21163c30e9.

* fix tabs
2018-12-22 10:47:04 -05:00
Ebrahim Byagowi e412008599 Remove redundant void from C++ sources (#1486) 2018-12-17 13:01:01 -05:00
Ebrahim Byagowi b2ebaa9afa Remove redundant 'inline' from methods (#1483) 2018-12-16 14:08:10 -05:00
Michiharu Ariza 32cc46c75a [CFF] fix oss-fuzz issue 11670: NULL dereference (#1450)
* guard against no subr access

* code tweak

* add minimized testcase for oss-fuzz 11670 (Null deference)
2018-12-05 09:02:34 +03:30
Behdad Esfahbod 825df6dbc7 [CFF] Change spaces to tabs 2018-11-30 23:04:59 -05:00
Behdad Esfahbod 592f39b3c4 [CFF] Whitespace 2018-11-30 22:54:57 -05:00
Michiharu Ariza 3787c07856 Implemented seac for extents & subset along with API tests 2018-11-14 13:38:03 -08:00
Michiharu Ariza 0dfa584cb4 changed Adobe company name 2018-11-12 08:47:07 -08:00
Michiharu Ariza d56e338a90 CFF1 no-desubroutinize + no-hinting
no-desubroutinize option is disabled for now
code cleanup (esp. CFF1 width handling)
bug fixes & renaming
2018-10-31 22:30:34 -07:00
Michiharu Ariza 8679d02b4b implement flex ops for glyph extents/subset
also removed unused CSInterpEnv::move_[xy]_with_arg
fixed bug a width being left over on argStack with CFF1
2018-10-18 13:04:21 -07:00
Michiharu Ariza 7d99a6cef8 overhauled error handling in CFF interpreter
minimized "if (error) return false" idiom
2018-10-12 02:16:07 -07:00
Michiharu Ariza b51418f596 added CFF2 get_extents
added source hb-ot-cff2-table.cc
augmented VariationData to return scalars
misc bug fixes, renaming, cleanup
2018-10-08 15:05:36 -07:00
Michiharu Ariza 51d5bf4ca2 silence warnings 2018-10-02 14:38:06 -07:00
Michiharu Ariza 76e54d2bd8 fixed subroutinized CFF2 flattening
and some code cleanup
2018-09-21 12:16:36 -07:00
Michiharu Ariza ebeccf3e63 fixed char widths & standard Encoding in subset CFF
also merged flush_n_args to flush_args into one
takes start index of the arguments on stack instead of count
2018-09-18 17:24:30 -07:00
Michiharu Ariza e75e7224c9 include curve control points in extents
this makes results consistent with FT
also optimized handling of path end points
2018-09-17 15:34:39 -07:00
Michiharu Ariza c0c85b852d implemented get_glyph_extents with CFF1
Implemented path operators in a new struct PathProc hooked up to CSOpSet
Added current point to CSInterpEnv
2018-09-17 11:14:56 -07:00
Michiharu Ariza fcf177885b templatized ArgStack as a prep to store blends 2018-08-31 16:28:47 -07:00
Michiharu Ariza 968168bf0e drop hints from CFF1 charstrings
renamed confusing Stack.size to Stack.count
2018-08-31 13:28:16 -07:00
Michiharu Ariza 8c5e03b541 Added drop_hints to SubrFlattener 2018-08-30 17:21:56 -07:00
Michiharu Ariza 1d1afddfd2 corrected preprocessor guards 2018-08-29 13:36:39 -07:00
Michiharu Ariza 8af9690ac7 Merge branch 'master' into cff-subset
Renamed cff "private" source/headers without the suffix
2018-08-29 13:26:17 -07:00