Garret Rieger
7d82191f61
[subset] Remove hb_subset_input_get/set_name_legacy ().
3 years ago
Garret Rieger
942636ae13
[subset] Remove hb_subset_input_get/set_retain_gids.
3 years ago
Garret Rieger
77b4a1cd96
[subset] Remove hb_subset_input_get/set_desubroutinize.
3 years ago
Garret Rieger
8bf5d4d4f7
[subset] Remove hb_subset_input_get/set_drop_hints.
3 years ago
Behdad Esfahbod
79e8b30609
[ot-shape] Fix application of kern table if GPOS kern is missing
...
Was broken sometime after we implemented kerx and tweaking it.
Fixes https://github.com/harfbuzz/harfbuzz/issues/3043
3 years ago
Garret Rieger
deee24fbef
[subset] Add missing FontName op code in top dict parsing.
...
Fix for #3058
3 years ago
Qunxin Liu
7416faceeb
[subset] fuzzer fix: https://oss-fuzz.com/testcase-detail/5715464591376384
3 years ago
Garret Rieger
0da9158f62
[subset] Remove OffsetTo::serialize().
...
Convert remaining uses of it to serialize_serialize() which correctly uses the object packer.
3 years ago
Qunxin Liu
eee7b459ee
[subset] add option --no-prune-unicode-ranges
3 years ago
Khaled Hosny
c3be28ea26
[ot-shape] Numeric runs native direction is LTR
...
See inline comments. Slightly modified version of the code from Jonathan
Kew on the linked issue.
Fixes https://github.com/harfbuzz/harfbuzz/issues/501
3 years ago
Khaled Hosny
71a6296620
[tests] Make record-test.sh work with .otf files
...
It hard-codes the file extension, but fonttools sunset will use .otf for
CFF fonts, so hard-code the output file from subset as well.
3 years ago
Garret Rieger
bc06af977f
[subset] speed up feature collection when tags are specified.
...
Precompute a feature index filter to avoid needing to iterate the feature tag list for each encountered feature index. For this particular fuzzer case speeds up feature collection from 50s to 2s.
3 years ago
Garret Rieger
d2397d91f3
[subset] Add additional colrv1 subsetting tests that has a glyph with components.
3 years ago
Qunxin Liu
d07f789ae3
[subset] support option "--notdef-outline"
3 years ago
Garret Rieger
675ebbeb3a
[subset] don't alloc zero bytes.
...
It will be leaked later since hb_blob_create() won't set up the blob to cleanup since it has length zero.
3 years ago
Behdad Esfahbod
bdfed8f113
[blob] Add failing versions of create API
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/2567
New API:
+hb_blob_create_or_fail()
+hb_blob_create_from_file_or_fail()
Use these in util/ to distinguish empty file from not-found file.
Only err on the latter.
3 years ago
Behdad Esfahbod
5bc05ba155
Prefer GPOS over kerx, if GSUB was applied
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/3008
3 years ago
David Corbett
5585ea02eb
[syllabic] Set position of dotted circle for Indic
3 years ago
Qunxin Liu
35d6af6943
[subset] fix fuzzer testcase: https://oss-fuzz.com/testcase-detail/5965777994907648
3 years ago
Qunxin Liu
1b6008ca62
fix fuzzer testcase: https://oss-fuzz.com/testcase-detail/5417934246772736
4 years ago
Qunxin Liu
7ab0f4eda9
fuzzer fix
4 years ago
Qunxin Liu
cb5a6b5a27
[subset] support option --layout-features
4 years ago
Garret Rieger
0989b5553a
[subset] Add test for overlaps flag setting.
4 years ago
Qunxin Liu
f739e1dc6a
[subset] subset both CPAL and COLRv1
4 years ago
Kurt Kartaltepe
2000f47ae5
[set] Compute is_subset by comparing pages.
...
Test subsets one page at a time instead of by codepoints. On my machine
this is about 250x faster than the previous implementation.
4 years ago
Jonathan Kew
89df353996
[aat] Add testcase for Apple Color Emoji couple-with-skin-tones sequence.
4 years ago
Garret Rieger
a08900b721
[subset] fix failing colrv0 subsetting when font has composite glyphs.
...
Composite glyph collection was happening along side colrv0 glyph collection which meant it was possible to miss grabbing the component glyphs for a glyph added by colrv0.
4 years ago
Garret Rieger
b07b97d5d7
[subset] Add more Noto Nastaliq test cases.
4 years ago
Garret Rieger
2b7647649a
[subset] update test-subset-gpos expected files.
4 years ago
Garret Rieger
92757f6809
[subset] Don't drop anchor device tables when dropping hints. These may contain variation data.
...
Update subseting expected files to match latest version of fontTools.
4 years ago
Garret Rieger
6fddc2bbf9
[subset] subset layout tables (G*) by default.
4 years ago
Garret Rieger
425ba1f4ab
[subset] fixes infinite loop in hb_set_get_max().
...
Fixes https://oss-fuzz.com/testcase-detail/5363902507515904
4 years ago
Garret Rieger
ec4321068b
[subset] fix infinite loop caused by alloc failure in repacker.
...
Fixes: https://oss-fuzz.com/testcase-detail/5609112151916544 .
4 years ago
Garret Rieger
0e845d973e
[subset] fix memory leak in repacker caused by failed alloc.
...
Fixes: https://oss-fuzz.com/testcase-detail/5616763250278400 .
4 years ago
Garret Rieger
3fb62cdc14
[subset] fail on offset overflow in tables that we don't repack.
...
Fixes: https://oss-fuzz.com/testcase-detail/5229304507138048
4 years ago
Behdad Esfahbod
47cbf8f2c4
[test] Silence more compiler warnings
4 years ago
Qunxin Liu
9dc9f0385d
[subset] fix for fuzzer testcase: https://oss-fuzz.com/testcase-detail/5858518134554624
4 years ago
Qunxin Liu
4af5dacedc
[subset] add fuzzer testcase
4 years ago
Garret Rieger
64122b5a44
[subset] don't visit lookup if covered glyph set has failed.
...
If covered glyph set is in error then the same lookup can be recursed into repeatedly potentially causing a fuzzer timeout. Fixes: https://oss-fuzz.com/testcase-detail/5416421032067072 .
4 years ago
Garret Rieger
4ec18c85e6
[subset] add subsetting tests with drop hints and layout subsetting enabled.
4 years ago
Garret Rieger
71d6d15600
[subset] clamp distance to prevent shifting outside of the limits of int64.
...
Fixes https://oss-fuzz.com/testcase-detail/4961171477233664 .
4 years ago
Garret Rieger
596f4258d0
[subset] copy Lookup::markFilteringSet when subseting.
4 years ago
Garret Rieger
c35d786397
[subset] never drop the 'pref' feature.
...
Never ever drop feature 'pref', even if it's empty. Harfbuzz uses it to choose the shaper for Khmer.
4 years ago
Garret Rieger
85b0728783
Add full variable font subsetting test.
4 years ago
Garret Rieger
b10741ca7f
[subset] when closing glyphs in context lookups don't use a current glyph set if a lookup is already applied.
4 years ago
Garret Rieger
2773d05740
[subset] Add a test case using NotoNastaliqUrdu.
4 years ago
Garret Rieger
c5c13006a1
[subset] fix memory leaks found in https://oss-fuzz.com/testcase-detail/5179935334465536
4 years ago
Garret Rieger
adca4ce071
[subset] fixes https://oss-fuzz.com/testcase-detail/6173520787800064 .
...
Caused by incorrect bounds check in glyph closure for context lookups.
4 years ago
Garret Rieger
752e393ad2
[subset] avoid calling clear on null pool set.
4 years ago
Garret Rieger
8741914a80
[subset] fix memory leak when map insert fails.
4 years ago