src/OT/Layout/GSUB/SingleSubstFormat1.hh

Branch


Log

Author Commit Date CI Message
Behdad Esfahbod 4a26e289 2025-09-30T15:31:04 Add `hb_ot_layout_lookup_collect_glyph_alternates()` (#5367) * [map] Massage operator << overloads * [ot-layout] Add +hb_ot_layout_lookup_collect_glyph_alternates To collect all glyph mapping from SingleSubst or AlternateSubst lookups in one call. Needed by FreeType autohinter for performance. New API: +hb_ot_layout_lookup_collect_glyph_alternates() * [layout] Change hb_ot_layout_lookup_collect_glyph_alternates() API https://github.com/harfbuzz/harfbuzz/pull/5367#discussion_r2149019638
Behdad Esfahbod c7378294 2025-02-06T01:42:25 [OT] Remove likely() from coverage check Not that it matters, but because of the set-digest, this path is not very likely() anymore.
Behdad Esfahbod 31949636 2023-05-04T16:29:48 Revert "[layout] Cache subtable coverages in hb_map_t" This reverts commit 7a715d74e06720c17d28ba7b4c3da0b583f8d1d3.
Behdad Esfahbod 7a715d74 2023-05-04T16:28:11 [layout] Cache subtable coverages in hb_map_t Proof-of-concept. Going to revert. Memory consumption is more than I like. It does speed up Roboto shaping another 15% though. Perhaps if we could add logic to choose which subtables to cache, this might be a useful approach.
Behdad Esfahbod 7327006d 2023-03-07T21:06:01 [GSUB] Support SingleSubst in get_glyph_alternates Fixes https://github.com/harfbuzz/harfbuzz/discussions/4146
Behdad Esfahbod 08784baf 2023-03-02T10:48:30 [GSUB/GPOS] Fix sanitization in Format1 Fixes https://oss-fuzz.com/testcase-detail/5120727025319936
Garret Rieger 918193eb 2023-02-22T23:11:29 [subset] fix a class of fuzzer timeouts caused by large shared coverage tables. More acurately estimates the op count for CoverageFormat2 tables as the population size instead of the size in bytes.
Behdad Esfahbod ed023f66 2023-01-12T17:04:24 Enable -Wformat-signedness And fix the codebase.
Behdad Esfahbod 9aad3dba 2022-10-26T13:04:02 [SingleSubst] Fix degenerate-lookup test Part of https://github.com/harfbuzz/harfbuzz/issues/3853
Behdad Esfahbod 6549aec8 2022-08-01T13:11:14 [SingleSubstFormat1] Help avoid timeouts in closure() some more For https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=49712
Behdad Esfahbod 149b0305 2022-07-29T12:41:30 Fix thinko
Behdad Esfahbod f7677213 2022-07-29T11:57:57 [SingleSubstFormat1] Don't close glyphs in degenerate cases Fixes https://oss-fuzz.com/testcase-detail/5145429829877760
Behdad Esfahbod 59b05359 2022-07-24T17:14:09 [GSUB/GPOS] Add more buffer messages Behind HB_BUFFER_MESSAGE_MORE. https://github.com/harfbuzz/harfbuzz/pull/3495
Behdad Esfahbod bbb4db90 2022-07-21T12:34:46 [Coverage/SingleSubst] Move hand-written loop to Coverage
Behdad Esfahbod efa38807 2022-07-21T11:52:36 [subset/SingleSubsetFormat1] Use Coverage.intersect_set
Behdad Esfahbod 00dfbbce 2022-07-21T11:39:32 [Coverage] Rename and templatize intersected_coverage_glyphs
Behdad Esfahbod d0eb2737 2022-07-21T11:24:56 [subset/GSUB/GPOS] Use more intersected_coverage_glyphs()
Behdad Esfahbod 5d7556e1 2022-07-21T10:42:29 Revert "[subst/SingleSubstFormat1] Rewrite nicer" This reverts commit bababe10724c27b2cbb09bf25e7dcf4aeea07588. The hand-written code is still much faster :(.
Behdad Esfahbod bababe10 2022-07-21T10:25:27 [subst/SingleSubstFormat1] Rewrite nicer
Behdad Esfahbod fa471043 2022-07-20T22:42:18 [subset] Fix previous commit
Behdad Esfahbod c4d2ef90 2022-07-20T22:36:35 [subset] Speed up subsetting of SingleSubstFormat1_3
Behdad Esfahbod d01e6bab 2022-07-20T22:17:33 [subset] Speed up SingleSubstFormat1_3 closure
Behdad Esfahbod aae8c74e 2022-07-20T11:51:09 [>64k:layout:SingleSubstFormat3] Fix masking https://github.com/be-fonts/boring-expansion-spec/issues/31
Behdad Esfahbod e3caf8d5 2022-07-06T13:11:53 [>64k:layout] Templatize SingleSubst
Garret Rieger 5fdae684 2022-06-29T23:52:08 [reorg] Move GSUB.hh up one level and change GSUB namespace to GSUB_impl.
Behdad Esfahbod 7243bf3e 2022-01-26T08:26:50 [reorg] Use relative include
Behdad Esfahbod c180f937 2022-01-26T08:22:40 [reorg] Move sanitize/dispatch and size macros to top
Garret Rieger f577d02f 2022-01-20T14:39:48 [reorg] Fix check-* scripts to work with sources files in directories.
Garret Rieger 3ef180db 2022-01-13T15:22:55 [reorg] Move SingleSubst opentype fields to top of the classes.
Garret Rieger 7dfd9e70 2022-01-13T14:17:51 [reorganization] WIP move single substitution into separate files.