src/hb-subset.cc


Log

Author Commit Date CI Message
Khaled Hosny 9aa6f8a9 2021-08-18T09:32:04 2.9.0
Garret Rieger d18aad7e 2021-08-13T15:05:48 [subset] restore old subsetting api methods. These will be left in place until the 3.0.0 release.
Garret Rieger 46d4a5e6 2021-07-29T15:07:13 [subset] Convert subset plan to use a flags bit set.
Garret Rieger fc7f7781 2021-07-27T12:21:19 [subset] add a note to hb-subset on what is and isn't supported (#3076)
Qunxin Liu 71b5509c 2021-07-20T20:05:35 [subset] support option --glyph-names
Garret Rieger 89fc399e 2021-07-22T13:00:34 [subset] Add hb-subset section documentation.
Garret Rieger 9ab751ac 2021-06-23T13:38:47 [subset] Remove hb_subset(). Leaving just hb_subset_or_fail().
Garret Rieger a6c6cda4 2021-06-09T17:46:47 [subset] Add no subset tables and passthrough unrecognized tables to the subset api. Matches fontTools options.
Garret Rieger 668f2bd9 2021-06-09T16:33:50 [subset] Add hb_subset_or_fail () to public subset api.
Garret Rieger edb57a8d 2021-06-09T10:42:48 Make subset input const in the subsetting operation. Don't modify the subset input's sets.
Qunxin Liu 7ab0f4ed 2021-05-27T11:40:34 fuzzer fix
Qunxin Liu f739e1dc 2021-05-11T11:44:32 [subset] subset both CPAL and COLRv1
Garret Rieger 3fb62cdc 2021-04-05T15:48:34 [subset] fail on offset overflow in tables that we don't repack. Fixes: https://oss-fuzz.com/testcase-detail/5229304507138048
Garret Rieger 3c8273ab 2021-03-25T11:39:57 Check for alloc failures on the gsub/gpos_langsys maps in subset plan creation.
Garret Rieger b14475d2 2021-03-18T10:51:26 [subset] further changes to serializer error handling. - Rename enum type and enum members. - in_errors() now returns true for any error having been set. hb-subset now looks for offset overflow only errors to divert to repacker. - Added INT_OVERFLOW and ARRAY_OVERFLOW enum values.
Garret Rieger 73ed59f7 2021-03-17T15:53:10 [subset] store errors in the serializer as a flag set. Make check_assign/check_equal specify the type of error to set.
Garret Rieger 832f2b59 2020-11-10T16:15:37 [subset] Refactor _subset () to reduce nesting and eliminate the use of 'goto'.
Garret Rieger 6e9468fc 2020-11-09T16:52:36 [subset] cleanup memory leaks in the repacker.
Garret Rieger dd8e5d0e 2020-11-03T14:01:42 [subset] Only run the repacker for GSUB/GPOS.
Garret Rieger 6b1ea4cb 2020-10-30T12:16:26 [subset] hook up the repacker to run if offset overflows are encountered during subsetting.
Garret Rieger dae32b4f 2020-07-28T18:31:46 [subset] bail out of subsetting if plan allocation fails.
Qunxin Liu 8b5d3ebd 2020-04-17T11:58:31 [subset] GSUB5/GPOS7 Contextual Subst/Pos Subtbale Subsetting support
Ebrahim Byagowi e642aab1 2020-02-28T22:24:25 [subset] Add source_blob as a hb_subset_context_t field (#2203) So no more double sanitizing source table.
Ebrahim Byagowi a7f694d4 2020-02-05T16:31:21 Merge branch 'subset_cblc' into master
Ebrahim Byagowi 43016715 2020-02-05T15:02:20 [subset] minor on _subset
Ebrahim Byagowi dcb5dfc9 2020-02-05T15:01:25 [subset] minor on tables iteration
Ebrahim Byagowi a8593339 2020-02-05T15:00:25 [subset] minor on switch statements
Ebrahim Byagowi b1f63109 2020-02-05T00:28:21 [subset] Optimize _is_table_present One call for most of the fonts and no malloc
ckitagawa 0d61926c 2020-02-04T13:36:51 [subset] Keep head when no glyf table
Ebrahim Byagowi 5b436033 2020-02-04T21:29:19 [subset] Rename _subset2 to _subset
ariza 2792fb8b 2020-02-02T22:00:53 first rewrite of cff/cff2 _subset with _subset2
ckitagawa e128f802 2020-01-21T13:35:43 parent 777ba47b50f6379b9f9abf1d72559316b7116b9e author ckitagawa <ckitagawa@chromium.org> 1579631743 -0500 committer ckitagawa <ckitagawa@chromium.org> 1580506176 -0500 [subset] Add CBLC support
ckitagawa ed857c46 2020-01-24T08:52:23 [subset] Add COLR support
ckitagawa 43b6c865 2020-01-09T10:44:20 [subset] Support sbix subsetting
Ebrahim Byagowi 19d45dca 2019-10-03T13:39:17 Merge remote-tracking branch 'upstream/master' into var-subset
Ebrahim Byagowi 41d6e95b 2019-09-02T01:41:48 [subset] Use internal API of hb_set_t
Ebrahim Byagowi 8ccf328d 2019-09-02T00:02:06 [subset] Run once for a tag
Ebrahim Byagowi f441a7c0 2019-09-01T02:18:09 Don't allow reference blob be accessed using empty tag in hb_face_reference_table (#1947)
Ebrahim Byagowi 28c8dcb5 2019-08-31T12:27:14 [subset] minor
Ebrahim Byagowi 9ff32b79 2019-08-29T19:53:18 Merge remote-tracking branch 'upstream/master' into glyf-rebase
Ebrahim Byagowi 875985cd 2019-08-29T14:51:22 [subset] Don't allow malicious fonts to insert unlimited table headers Fixes https://crbug.com/oss-fuzz/16810
Ebrahim Byagowi 88e9db19 2019-08-27T02:44:26 [subset] Remove subset table size assertion As https://github.com/harfbuzz/harfbuzz/pull/1930#issuecomment-525036802
Ebrahim Byagowi 269a120f 2019-08-25T20:37:00 [subset] Raise the bar in new vs old table size https://crbug.com/oss-fuzz/16740 This is actually an interesting thing that {h,v}mtx allocates as much as a font pretends to have glyphs but the solution is not that obvious as regular fonts can have less than actually containing metrics in their {h,v}mtx. This change raises the bar to consider this hmtx 4 byte for every glyph case. Initially we wanted to just find things allocating crazy amount of memory but having the assert has led to interesting findings also so let's don't remove the assert and see what we can find elsewhere.
Ebrahim Byagowi 922898c8 2019-08-23T22:04:14 [subset] Fail on table grow more than 16x+4096
Ebrahim Byagowi 28aba780 2019-08-23T16:47:15 [subset] Fix blob leak of _subset2 when returns early Fixes https://crbug.com/oss-fuzz/16639
Qunxin Liu 37572882 2019-06-25T13:17:30 [subset] cmap table to use _subset2 and new iterator frameworks
blueshade7 8bf989ea 2019-07-08T17:13:29 update from master
Michiharu Ariza 5763a927 2019-07-01T15:17:19 Merge branch 'master' into var-subset
Qunxin Liu 9bd8d66c 2019-06-12T11:02:48 [subset] VORG table to use _subset2 method and new iterator frameworks
Garret Rieger f9b1ae73 2019-06-05T17:40:59 [subset] Move OS/2 to subset2.
Qunxin Liu 93d592e0 2019-06-05T16:51:31 [subset] post table to use _subset2
Qunxin Liu db938479 2019-06-04T10:30:53 [subset] maxp table to use _subset2
Michiharu Ariza 4ddab6fa 2019-06-05T11:21:27 Merge branch 'master' into var-subset
Qunxin Liu 209491fc 2019-05-29T14:03:17 [subset] Hmtx/vmtx tables to use subset2 and new iterator frameworks
rsheeter 96de9476 2019-05-24T11:22:41 Merge pull request #1722 from googlefonts/glyf [subset] Use iterators in glyf/loca subsetting
Garret Rieger ff7fc6d4 2019-05-22T17:36:16 [subset] Add morx, mort, kern, and kernx to the default layout tables drop list.
Rod Sheeter d1b12a54 2019-05-20T21:29:54 Merge branch 'master' of https://github.com/harfbuzz/harfbuzz into glyf
Rod Sheeter 82bbec30 2019-05-16T15:14:01 Merge branch 'master' of https://github.com/harfbuzz/harfbuzz into glyf
rsheeter 240bc86e 2019-05-08T14:59:03 [subset] Remove subset-glyf; want everything to point to new iter-based edition. Some of the code will resurface as impl builds out.
rsheeter 02d4d4f3 2019-05-08T14:43:18 [subset] Starting to sketch glyf as iter
rsheeter ed727d4b 2019-05-08T16:39:45 Merge branch 'master' of https://github.com/harfbuzz/harfbuzz into glyf
rsheeter fb9bff95 2019-05-08T14:59:03 [subset] Remove subset-glyf; want everything to point to new iter-based edition. Some of the code will resurface as impl builds out.
rsheeter f9b089b6 2019-05-08T14:43:18 [subset] Starting to sketch glyf as iter
Garret Rieger 0ff3618c 2019-05-17T15:30:01 [subset] Use hb_subset_input_t inside of subset_options_t so that input defaults are shared between the library and cli.
Garret Rieger 3be0ffe4 2019-05-16T11:29:15 [subset] Add drop tables to subset input.
Behdad Esfahbod 5ea8ad5c 2019-05-10T23:36:42 [subset] Add HB_NO_SUBSET_CFF Doesn't fully prune all the relevant code. To be fixed later. Part of https://github.com/harfbuzz/harfbuzz/issues/1652
Behdad Esfahbod 227d85e1 2019-05-10T23:15:58 Minor
Garret Rieger d5decf9b 2019-05-07T15:47:38 [subset] Move hdmx to subset2.
Behdad Esfahbod 521262b2 2019-05-07T11:08:08 [subset] Add TODO
Michiharu Ariza 1223a352 2019-04-29T16:43:48 Merge branch 'master' into var-subset
Behdad Esfahbod 6977a95f 2019-04-27T10:05:25 [subset] Don't crash if subsetting GSUB/GPOS fails Fixes fuzzer issue.
Behdad Esfahbod 2b051e7a 2019-04-27T10:01:11 [subset] Check error after calling serializer end
Qunxin Liu 19afd250 2019-04-24T14:02:29 [subset] Update to use _subset2() for name table
Qunxin Liu 408c1dae 2019-03-29T10:34:32 [subset] subset name table step 1, write out table unmodified, use accelerator to access string
Michiharu Ariza 6cde814a 2019-04-16T11:35:07 Merge branch 'master' into var-subset
Behdad Esfahbod 19e800c9 2019-04-15T12:07:00 Ugh. Another try, to unbreak gcc this time! Jenga.
Behdad Esfahbod 3a88f55c 2019-04-15T11:59:57 Move location of HB_UNUSED to make MSVC happy
Behdad Esfahbod 47e538a3 2019-04-12T22:50:22 Add HB_NO_SUBSET_LAYOUT Part of https://github.com/harfbuzz/harfbuzz/issues/1652
Michiharu Ariza b999ce9b 2019-04-03T10:34:09 Merge branch 'master' into var-subset
Behdad Esfahbod 2e675cc7 2019-04-01T16:45:50 [subset] Call serialize start/end around it To be cleaned up.
Michiharu Ariza f7700fc4 2019-03-30T20:49:34 Merge branch 'master' into var-subset
Behdad Esfahbod fe05e480 2019-03-30T15:06:25 [serialize] Add ran_out_of_room
Michiharu Ariza 2c5ed7f1 2019-02-26T11:11:50 Added hb-ot-var-gvar-table.hh implemented sanitize() placeholder subset() some code cleanup
Michiharu Ariza 655bc96b 2019-02-22T14:53:06 subset VVAR & outer indices
Michiharu Ariza eddbc9d0 2019-02-26T11:11:50 Added hb-ot-var-gvar-table.hh implemented sanitize() placeholder subset() some code cleanup
Michiharu Ariza 85631692 2019-02-22T14:53:06 subset VVAR & outer indices
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 6f91e0d9 2019-02-26T11:11:50 Added hb-ot-var-gvar-table.hh implemented sanitize() placeholder subset() some code cleanup
Michiharu Ariza 5d781f62 2019-02-22T14:53:06 subset VVAR & outer indices
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.
Garret Rieger 05e99c86 2019-01-28T17:05:04 [subset] A few small fixes for the new subset plan api.
Behdad Esfahbod 9aebfb41 2018-12-18T13:22:17 [serialize] Streamline error propagation
Behdad Esfahbod 42a10125 2018-12-13T19:39:59 [subset] Actually subset GDEF
Behdad Esfahbod 57610313 2018-12-12T21:21:26 [subset] Minor
Michiharu Ariza 9ae954f4 2018-11-30T15:00:52 Merge branch 'master' into cff-subset
Behdad Esfahbod 861bc753 2018-11-29T14:34:44 [vector] Make pointer cast explicit Too bad this doesn't help MSVC 2008 build, as explicit operators are C++11.
Michiharu Ariza b403be8a 2018-11-16T12:29:18 Merge branch 'master' into cff-subset
Ebrahim Byagowi 11aa0468 2018-11-15T23:10:56 [subset] minor, adjust spaces
Michiharu Ariza 1682d1bb 2018-11-04T13:25:41 Merge branch 'master' into cff-subset
Khaled Hosny 2c68f34b 2018-11-02T23:06:00 [os2] Capitalize table tag and struct Other tables follow the case of the OT tag, except this one.