src/hb-subset.cc


Log

Author Commit Date CI Message
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 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
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
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
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
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
Behdad Esfahbod 2e675cc7 2019-04-01T16:45:50 [subset] Call serialize start/end around it To be cleaned up.
Behdad Esfahbod fe05e480 2019-03-30T15:06:25 [serialize] Add ran_out_of_room
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.
Michiharu Ariza e600e544 2018-11-01T16:13:56 Merge branch 'master' into cff-subset
Behdad Esfahbod 3a4e5dd4 2018-10-29T18:05:25 Remove a few unnecessary hb_auto_t<>'s See a85641446c30247c4e948263f0f8c1147ed4efb9
Behdad Esfahbod 955aa56b 2018-10-25T16:50:38 [vector] Make it act more like pointer Add pointer cast operator and plus operator.
Michiharu Ariza 55942ad5 2018-10-06T14:49:44 Merge branch 'master' into cff-subset
Behdad Esfahbod 341206eb 2018-10-05T18:39:48 [vector] Make hb_vector_t relocatable / nestable Ugly, but... Fixes https://github.com/harfbuzz/harfbuzz/issues/1227
Michiharu Ariza f212c050 2018-09-20T09:45:43 Added VORG struct and its subsetter new file: hb-ot-vorg-table.hh
Behdad Esfahbod 20a11a82 2018-09-10T13:56:28 Revert "[subset] Disable GSUB/GPOS subsetting for now" This reverts commit 616fd34a69bb69bc35c7e4ea939e71c3ea2e92cb.
Behdad Esfahbod 616fd34a 2018-09-10T11:19:49 [subset] Disable GSUB/GPOS subsetting for now So I can get a release out. I haven't debugged those yet, and they are producing bad tables.
Michiharu Ariza 1e88b175 2018-09-07T10:50:55 Merge branch 'master' into cff-subset
Behdad Esfahbod 5f17dbc3 2018-09-07T10:24:22 [subset] Fix div-by-zero
Michiharu Ariza 22b88632 2018-09-06T22:27:44 Merge branch 'master' into cff-subset
Behdad Esfahbod 1e6599f5 2018-09-05T19:29:42 Fix older compilers re '>>' at nested template declarations
Behdad Esfahbod a1e5e07c 2018-09-05T16:24:28 [subset] Hook up GSUB/GPOS, but still disabled They are still in the drop list.
Behdad Esfahbod aba0a945 2018-08-31T13:25:19 [subset] Add hb-subset-input.hh and make hb-subset.hh toplevel include
Behdad Esfahbod 93fe0faa 2018-08-29T18:24:03 [subset] Clean up hb_subset_input_t API
Behdad Esfahbod d237ce71 2018-08-29T18:13:07 [subset] Bail if subsetting a table failed
Behdad Esfahbod f39166f0 2018-08-29T18:09:55 [subset] Remove unused hb_subset_profile_t We might reintroduce it later, but for now remove, as it was unused. Some things that should have been in this object (drop_hints, etc) are already in hb_subset_input_t. So, for now, keep everything there.
Michiharu Ariza 8af9690a 2018-08-29T13:26:17 Merge branch 'master' into cff-subset Renamed cff "private" source/headers without the suffix
Behdad Esfahbod dae39c58 2018-08-25T22:44:39 [face] Introduce character-map API New API: +hb_face_collect_unicodes +hb_face_collect_variation_selectors +hb_face_collect_variation_unicodes
Behdad Esfahbod c77ae408 2018-08-25T22:36:36 Rename hb-*private.hh to hb-*.hh Sorry for the noise, downstream custom builders. Please adjust.
Behdad Esfahbod b09a0336 2018-08-25T22:04:39 [cmap] More hb_auto_t<>(...)
Behdad Esfahbod 1dcf5fb0 2018-08-25T16:11:26 [cmap Add hb_subset_collect_variation_unicodes() To be moved to hb-face.h later.
Behdad Esfahbod 4806b380 2018-08-25T15:56:07 [cmap] Add hb_subset_collect_variation_selectors() To be moved to hb-face later.
Behdad Esfahbod d60c4656 2018-08-25T08:47:06 Rename get_all_codepoints() to collect_unicodes()
Behdad Esfahbod aadb2a91 2018-08-25T08:18:53 Add face-builder New API: +hb_face_builder_create +hb_face_builder_add_table
Michiharu Ariza e67bb3fb 2018-08-16T00:25:57 renamed OT::cff to OT::cff1 for consistency along with HB_OT_TAG_cff1
Michiharu Ariza fdbfa184 2018-08-16T00:13:09 renamed CFF version 1 structs and sources to CFF1 from CFF "CFF" is used for shared structs & sources between CFF1 & CFF2 except OT:cff is for CFF version 1 table
Michiharu Ariza 64c54122 2018-08-10T11:07:07 Added CFF support Added sources hb-ot-cff-table.hh, hb-subset-cff.cc & hh Templatized Index because CFF uses 16-bit count while CFF2 uses 32-bit Misc code cleanup & bug fixes
Michiharu Ariza 161ece4c 2018-08-06T11:23:50 Merge branch 'master' into cff-subset
Behdad Esfahbod b912fbea 2018-08-06T06:30:12 Remove most uses of direct comparison to Null objects
Michiharu Ariza e2fd49e4 2018-08-02T11:39:22 Merge branch 'master' into cff-subset
Behdad Esfahbod ed7b2e58 2018-08-01T23:59:09 Remove OT namespace from hb-machinery-private.hh
Michiharu Ariza 161b642e 2018-07-30T12:22:09 Merge branch 'master' into cff-subset
Behdad Esfahbod 9583e007 2018-07-22T22:40:32 Port more off of Sanitizer<>
Michiharu Ariza 3a61c3e9 2018-07-18T14:17:52 first push of CFF/CFF2 work Index, Dict structs hooked up to hb-subset (takes CFF2, outputs empty CFF2)
Behdad Esfahbod be458eb0 2018-07-10T14:41:04 Include more basic internal headers from hb-private.hh
Behdad Esfahbod bddeb2b1 2018-07-10T14:12:37 Minor renamings of internal inline functions
Behdad Esfahbod cc0b04f4 2018-06-12T18:24:54 [subset] Remove HB_SUBSET_BUILTIN Just include hb-static.cc in libharfbuzz-subset.so source list as well. Those building it built-in will include hb-static.cc once already. No need for any gymnastics.
Behdad Esfahbod b8e406f0 2018-06-10T17:22:38 More fixes for SunStudio 12.6 build Followup to https://github.com/harfbuzz/harfbuzz/pull/1053
Garret Rieger a5673da9 2018-06-07T14:23:03 [subset] Add drop_ot_layout setting to subset input.
Behdad Esfahbod f9abbf83 2018-06-02T15:30:59 Fix fallout from 975bdd5ef562e37655067b703b2b9ca7481f4985 Ouch!
Behdad Esfahbod f7515769 2018-06-01T17:48:37 [vector] Use Crap pool in push() as well
Garret Rieger 251cc977 2018-05-30T12:23:51 [subset] Switch to using hb_map_t inside of hb_subset_plan_t.
Behdad Esfahbod fd3d0042 2018-05-24T15:58:26 Move pool definitions to hb-static.cc
Behdad Esfahbod 7f7b1370 2018-05-24T14:09:04 Fix Uniscribe build If a pointer type was passed to Null(), reinterpret_cast<> was complaining about qualifiers being removed. Turns out I need the const on the other side of "Type" to fix that. Also remove unused const from NullPool type.
Behdad Esfahbod f83e992c 2018-05-24T11:46:57 Mark CrapPool thread_local Not sure if I like to keep it. For now, aim for correctness.
Behdad Esfahbod 5d801298 2018-05-24T11:33:15 Add CrapPool Common Regoin for Access Protection. Like the NullPool, but writable.
Behdad Esfahbod 63f57f4d 2018-05-08T16:56:11 Mark more unsized array's as arrayZ
Behdad Esfahbod eba1c16a 2018-05-08T02:47:42 Always lock blob in sanitize. Remove blob->lock_as() in favor of blob->lock()
Behdad Esfahbod b4fa5050 2018-05-08T02:45:08 Move Sanitizer::lock_instance<>() to blob->lock_as<>().
Behdad Esfahbod abc12f7b 2018-05-08T02:23:36 Move null pool to hb-private