src/hb-subset-cff-common.hh


Log

Author Commit Date CI Message
Behdad Esfahbod fb413f52 2022-05-16T17:08:43 [subset/cff] Don't use bitfields for hot bools The struct has room because of alignment, and these bools are hot.
Behdad Esfahbod f0853796 2022-05-11T12:10:03 [cff-subset] Pre-alloc vector for operator decoding
Behdad Esfahbod bff78e65 2022-05-10T16:33:37 [cff] Convert interpretation environment to use constructor
Behdad Esfahbod de053e2e 2022-05-10T15:38:37 [cff] Convert subr_subset_param_t to use constructor
Behdad Esfahbod 8aa54aac 2022-05-09T16:09:56 [cff] Replace byte_str_t with hb_bytes_t use
Behdad Esfahbod fe783ac0 2022-01-18T13:38:28 [cff] Remove op_str_t nop init/fini
Garret Rieger f1dc8b08 2022-01-18T10:29:04 [subset-cff] Convert subr_closures_t to constructor/destructor instead of init/fini.
Behdad Esfahbod a48aa985 2022-01-18T09:32:58 [subset-cff] Remove another set of fini_deep
Behdad Esfahbod de2cef42 2022-01-18T09:21:31 [bimap] Remove init/fini
Garret Rieger 46d4a5e6 2021-07-29T15:07:13 [subset] Convert subset plan to use a flags bit set.
Garret Rieger 32f052b0 2020-07-30T13:45:04 [ENOMEM] Fix several instances of not checking resize in CFF.
Ebrahim Byagowi 2be859d2 2020-04-20T23:48:23 minor, replace nullptr checks with implicit ones
Ebrahim Byagowi 2dda6dd7 2020-04-20T14:12:45 minor, tweak spacing turn 8 spaces to tab, add space before Null/Crap
ariza 0b290538 2020-03-04T22:31:21 removed unused code
ariza e8f010d7 2020-03-04T16:54:27 removed unused code & data; rename
ariza c05458ec 2020-03-02T16:51:19 update cff & cff2 subsetters
Ebrahim Byagowi ce114d6b 2019-12-31T15:53:02 minor, tweak spaces
Ebrahim Byagowi 453050ad 2019-10-13T08:38:56 Merge remote-tracking branch 'upstream/master' into var-subset
Ebrahim Byagowi c7621cf2 2019-10-08T13:24:26 Minor, replace hb_set_add with private API
Ebrahim Byagowi 0558413f 2019-10-01T13:49:55 Minor, tweak spaces
blueshade7 8bf989ea 2019-07-08T17:13:29 update from master
Michiharu Ariza f3ee2bd0 2019-06-20T14:33:09 add ops & methods to hb_bimap_t making it more like hb_map_t moved has () to hb_bimap_t from hb_inc_bimap_t moved identity () to hb_inc_bimap_t removed forward()
Michiharu Ariza 09496695 2019-06-17T22:12:40 add hb_bimap_t, subclass hb_inc_bimap_t replacing CFF::remap_t
Michiharu Ariza a1177fec 2019-03-29T08:43:47 Merge branch 'master' into var-subset rebase master
Behdad Esfahbod b986c6a3 2019-03-29T20:17:46 [C++11] Remove IntType::set() in favor of operator=
Michiharu Ariza f1e97c18 2019-02-25T09:59:27 renamed hb_map2_t to hb_bimap_h in its own .hh
Michiharu Ariza a00d1d5e 2019-02-21T16:34:49 fix CFF2 local subr subsetting bug exposed by impl change of fdmap also fixed name of subr_remap_ts as subr_remaps_t
Michiharu Ariza f289ffe5 2019-02-25T09:59:27 renamed hb_map2_t to hb_bimap_h in its own .hh
Michiharu Ariza c485b77c 2019-02-21T16:34:49 fix CFF2 local subr subsetting bug exposed by impl change of fdmap also fixed name of subr_remap_ts as subr_remaps_t
Michiharu Ariza c8420109 2019-02-20T15:48:29 subset HVAR Re-implemented & repurposed CFF:remap_t as hb_map2_t (moved to hb-ot-layout-common.hh) for two-way mapping for use by index map subsetting. Hooked up HVAR subsetter through _subset2. Some renaming in CFF code.
Michiharu Ariza d817b446 2019-02-25T09:59:27 renamed hb_map2_t to hb_bimap_h in its own .hh
Michiharu Ariza a7b801f6 2019-02-21T16:34:49 fix CFF2 local subr subsetting bug exposed by impl change of fdmap also fixed name of subr_remap_ts as subr_remaps_t
Michiharu Ariza 09df17e7 2019-02-20T15:48:29 subset HVAR Re-implemented & repurposed CFF:remap_t as hb_map2_t (moved to hb-ot-layout-common.hh) for two-way mapping for use by index map subsetting. Hooked up HVAR subsetter through _subset2. Some renaming in CFF code.
Michiharu Ariza c6af8461 2019-02-12T15:10:43 tweaked --desubroutinize to remove hintmask only subrs
Michiharu Ariza f2908b4d 2019-01-31T14:16:37 Implement subset --regain-gids option with CFF1/2 along with api tests & expected results
Behdad Esfahbod d25a2f14 2018-12-23T20:19:52 Fix a few warnings
Ebrahim Byagowi ae6e348d 2018-12-22T19:47:29 Minor, tweak spaces
Michiharu Ariza 29f0b6bc 2018-12-22T07:47:04 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 21163c30e9d18759414f7fe2518628241599f039. * fix tabs
Behdad Esfahbod 474a1205 2018-12-21T18:46:51 [array/vector] Rename len to length
Ebrahim Byagowi e4120085 2018-12-17T21:31:01 Remove redundant void from C++ sources (#1486)
Ebrahim Byagowi b2ebaa9a 2018-12-16T22:38:10 Remove redundant 'inline' from methods (#1483)
Michiharu Ariza bcb4ecaf 2018-12-12T17:36:01 [CFF] check out of range FD index (#1477) * add fd index checks to subr subsetter also added oss-fuzz test case * undid SubrSubsetParam::is_valid because already validated by SubrClosures.valid
Michiharu Ariza 2941208f 2018-12-11T12:21:24 [CFF] oss-fuzz issue 11690 ASSERT: substr.offset >= opStart (#1461) * fix oss-fuzz 11690: substr.offset >= opStart detect recursive subroutine call & handle as error * fix build failure * add minimized test case for oss-fuzz 11690 * removed asserts
Michiharu Ariza 33358624 2018-12-11T12:20:20 minimize use of assert: removed or changed to error handling (#1467)
Behdad Esfahbod 825df6db 2018-11-30T23:04:59 [CFF] Change spaces to tabs
Behdad Esfahbod 592f39b3 2018-11-30T22:54:57 [CFF] Whitespace
Michiharu Ariza d8c69137 2018-11-30T18:58:14 undo 0u
Michiharu Ariza 9483da14 2018-11-30T16:59:41 redo fixes
Michiharu Ariza 291da448 2018-11-30T16:50:46 yet another
Michiharu Ariza b1821b9d 2018-11-30T16:31:01 some more
Michiharu Ariza b67a7c73 2018-11-16T12:28:24 drop dotsection as hint along with test case
Michiharu Ariza 072c7aba 2018-11-15T15:41:46 use 2-byte offset instead of 4-byte for local subrs more than enough since local subrs immediately follow its corresponding private dict, as the result 2-byte redunction for each font dict with local subrs updated api test expected subset fonts accordingly
Michiharu Ariza 0dfa584c 2018-11-12T08:47:07 changed Adobe company name
Michiharu Ariza 636a6833 2018-11-07T17:58:45 fixed ends_in_hint bug subr ends in hint itself should be regarded as hint this flag should propagate to its caller if the call itself is at the end of the caller
Michiharu Ariza 0996c0ff 2018-11-07T14:48:37 implented no-desubroutinize with CFF2 along with API test replaced AdobeVFPrototype.abc.otf with a hinted (maually) & subroutinized copy replaced expected results as well
Michiharu Ariza b721fdae 2018-11-04T16:19:15 fixed leaks in CFF subr subset
Michiharu Ariza 85f5644e 2018-11-04T14:17:30 added missing switch breaks
Michiharu Ariza 191ca0f1 2018-11-03T22:42:22 CFF1 no-desubr fixes make sure charstring/subrs not ending with endchar/return handled correctly if no local subrs, skip serializing Subrs op in Private misc fixes
Michiharu Ariza 481fdfdc 2018-11-02T15:28:09 Merge branch 'cff-subset' of https://github.com/harfbuzz/harfbuzz into cff-subset
Michiharu Ariza 1bc710a8 2018-11-02T15:28:01 added CFF1 desubr api test cases & bug fixes
Michiharu Ariza 6186dbf1 2018-11-01T17:25:23 added hb_subset_input_set_desubroutinize API hooked up with CFF1 subroutinizer a renaming
Michiharu Ariza 2840a104 2018-11-01T16:18:13 tweaks to build with new merge
Michiharu Ariza d56e338a 2018-10-31T22:30:34 CFF1 no-desubroutinize + no-hinting no-desubroutinize option is disabled for now code cleanup (esp. CFF1 width handling) bug fixes & renaming
Michiharu Ariza b64ef69b 2018-10-12T14:14:21 from encode_int removed assert hit by fuzzer clamp the value instead
Michiharu Ariza 0f159a38 2018-09-12T16:08:54 fixed serialize_fdselect_3_4
Michiharu Ariza 497e7fb2 2018-09-11T16:47:55 misc bug fixes Added OpCode_FontMatrix to TopDictOpSet (yet to parse values) fixed a wrong assert in encode_int
Michiharu Ariza cc52e53c 2018-09-10T16:27:49 Removed unused subr subset code
Michiharu Ariza 1666b89e 2018-09-10T16:00:20 subset CFF1 String Index Repurposed FDMap as Remap then subclassed for remapping SIDs misc code cleanup
Michiharu Ariza 5ea03d29 2018-09-04T11:29:15 fix build by untemplatizing DictOpSet & DictVal as they aren't instantiated with BlendArg (yet)
Michiharu Ariza f2d299b0 2018-09-04T10:25:21 Drop hints from CFF2 charstrings Templatized ArgStack so it may store the default value along with blend deltas as BlendArg while parsing blend operator arguments in CFF2 charstring Added get_region_count() method to VarRegionList & VariationStore
Michiharu Ariza fcf17788 2018-08-31T16:28:47 templatized ArgStack as a prep to store blends
Michiharu Ariza 8c5e03b5 2018-08-30T17:21:56 Added drop_hints to SubrFlattener
Michiharu Ariza 9fd08cc2 2018-08-29T18:18:18 CFF2 subroutine flattner Factored out CFF1 & CFF2 common subsetting code in hb-subset-cff-common.hh
Michiharu Ariza 1d1afddf 2018-08-29T13:36:39 corrected preprocessor guards
Michiharu Ariza 8af9690a 2018-08-29T13:26:17 Merge branch 'master' into cff-subset Renamed cff "private" source/headers without the suffix