Qunxin Liu
95230e291d
[subset] support subsetting GSUB8
4 years ago
Garret Rieger
0104409959
Fix repack_tests for distcheck.
4 years ago
Garret Rieger
b8b8c58b9f
[subset] add tests that check for successful repacking of a real font file.
4 years ago
Qunxin Liu
56ca435787
[subset] fix for collect_features and remove_redundant_lamngsys
...
previously remove_redundant_sys () is missing in harfbuzz, after
redundant langsys removal, some features are removed as well in
prune_features() in fonttools. This change is trying to get the same
result between harfbuzz and fonttools.
4 years ago
Garret Rieger
69d772e522
[subset] Fixed test gsub5 test files.
4 years ago
Qunxin Liu
0e1c0fa404
[subset] optimize glyph closure method: step 5
...
add testcase and some fixes
4 years ago
Garret Rieger
1b79b8cd2d
[subset] update gpos tests to reflect updated behaviour.
4 years ago
Garret Rieger
b1b1486d07
[subset] update expected files to not include cmap12 pruning.
4 years ago
Garret Rieger
190b7a98f8
[subset] Update PairPosFormat2 subsetting to match fontTools updated subsetting ( https://github.com/fonttools/fonttools/pull/2221 )
...
- subset class def 1 against the coverage table.
- Don't re-use class 0 in class def 2.
- Ignore class 0 glyphs for the purposes of determing format 1 vs format 2 encoding for ClassDef.
Add an additional test case which demonstrates these issues.
4 years ago
Khaled Hosny
f2d08578e7
[tests] Increase shape-fuzzer timeout
4 years ago
Behdad Esfahbod
15f3ef0136
[test] Fix output format
4 years ago
Khaled Hosny
7686ff854b
[ot] Keep substituted Default_Ignorables ( #2886 )
...
Don’t replace Default_Ignorables with zero-width space if they are
substituted or multiplied, not just when ligated.
After this change, HarfBuzz output matches that of Uniscribe and
CoreText for the new tests.
Fixes https://github.com/harfbuzz/harfbuzz/issues/2883
4 years ago
Behdad Esfahbod
fd489433a8
[indic] Fix cluster-merging logic with cluster-level=1
...
Was producing non-monotonic cluster numbers because our faulty logic
was not merging clusters if something from before base and after base
had switched positions.
Fixes https://github.com/harfbuzz/harfbuzz/issues/2272
4 years ago
Behdad Esfahbod
1c693e8c28
[test] Fix unused-var warning
4 years ago
justvanrossum
1551f3d518
fixing more expected test results
4 years ago
justvanrossum
79e4f436e7
Apply rounding correctly when calculating glyph extents for CFF and CFF2; adjust expected test results
4 years ago
justvanrossum
d01ebeae21
calculate extents based on scaled then rounded values; undo two of the earlier test result adjustments
4 years ago
justvanrossum
1d02e9c63b
two more adjusted expected extents results (still not convinced this is the right thing, though)
4 years ago
justvanrossum
cd0babe6a6
adjust expected test result
4 years ago
Behdad Esfahbod
d8ea552d10
[aat] Improve unsafe-to-break logic
...
Reduces false-positives. See comments for new logic.
Fixes https://github.com/harfbuzz/harfbuzz/issues/2860
Adjusts run-tests.sh to allow unhashed absolute filenames.
4 years ago
Garret Rieger
5ca353a2d0
[subset] fix heap buffer overflow found by fuzzer.
4 years ago
David Corbett
751ed68fee
[indic] Fix shaping of U+0B55 ORIYA SIGN OVERLINE
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/2849
4 years ago
Garret Rieger
00d9276343
Add gpos9 expected files to Makefile.am
4 years ago
Garret Rieger
08a4997fde
[subset] Add subset support for Extension lookups (GPOS 9, GSUB 7).
4 years ago
Behdad Esfahbod
eb069f3948
[tests] Update expected output of recently-merged gpos5
...
The merged PR was from before landing this:
commit 7a72b20aa2
Author: Garret Rieger <grieger@google.com>
Date: Thu Sep 24 15:58:48 2020 -0700
[subset] Subset GDEF during layout subsetting tests.
4 years ago
Khaled Hosny
554aaa0c5d
[build] Fix make distcheck
...
A regression from 7b77ce0507
.
It was caught by the CI build in the PR, but apparently we are now used
to CI failures that they are effectively ignored.
Also, yay for multiple build systems.
4 years ago
Behdad Esfahbod
33a0f0b686
[test] Remove fuzzed test font that triggers virus alert
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/2750
4 years ago
Garret Rieger
f94bf9f06f
[set fuzzer] limit the total number of set members in a fuzzing input.
...
Currently the fuzzer can create arbitarily long inputs which once big enough will trigger a timeout.
4 years ago
Garret Rieger
a4c3732f59
[ENOMEM] fix set clear() causing corruption if the set is in_error().
4 years ago
David Corbett
b2e7bb2a7c
Don’t map BCP 47 to coincidentally similar OT tag
4 years ago
David Corbett
17da41bd06
Update language system tag registry to OT 1.8.4
4 years ago
Khaled Hosny
5091ea7e24
Merge pull request #2733 from astiob/buffer-context-doc
...
[docs] Describe buffer context applicability more explicitly
4 years ago
Garret Rieger
be33704c00
Add gpos 5 tests to meson build file.
4 years ago
Qunxin Liu
3a0b05faf1
[subset] GPOS 5 MarkToLigature subsetting support
4 years ago
Garret Rieger
010accb3d5
[subset] Add additional test cases for the Amiri tests.
4 years ago
Garret Rieger
3271a7cdaa
[subset] Remove redundant langys from Amiri test font.
...
FontTools removes these when subsetting but harfbuzz does not yet support redundant langsys removal. So this gets the Amiri tests passing for now.
4 years ago
Garret Rieger
9fad540245
[subset] check that sub rules in ContextFormat 1 and 2 intersect the glyphs set before recursing during closure lookups.
4 years ago
Garret Rieger
7b77ce0507
[subset] Add subsetting integration test using Amiri.
...
Demonstrates a failure in subsetting GPOS 8/GSUB 6.
4 years ago
Garret Rieger
7a72b20aa2
[subset] Subset GDEF during layout subsetting tests.
4 years ago
ebraminio
1f8b1e7f18
[ENOMEM] Return gracefully if stages isn't initialized correctly ( #2639 )
...
This happens if calls to 'm.lookups[table_index].push ()' has been
silently failed due to lack of memory.
This change just returns gracefully instead issuing the assert.
Fixes https://crbug.com/oss-fuzz/24494
4 years ago
Garret Rieger
bbbcad0dbb
Revert "[ENOMEM] don't perform set process operations if the other set is in an error state."
...
This reverts commit f3929abafe
.
5 years ago
Garret Rieger
f3929abafe
[ENOMEM] don't perform set process operations if the other set is in an error state.
...
Running a process while the other set is in an error state can potentially corrupt this sets map map (for example by overwritting all of the major values with 0).
5 years ago
Khaled Hosny
7d64b09765
[myanmar] Don’t disable liga feature
...
This seems to have been carried over from the Indic shaper, but
Uniscribe enables it by default.
See https://github.com/harfbuzz/harfbuzz/issues/2213#issuecomment-686062915
5 years ago
Garret Rieger
8c3d4de796
[subset] Fix integer underflow in ContextFormat2.
5 years ago
David Corbett
91fe20f0f5
Disambiguate OT tags when primary tag is not first
5 years ago
David Corbett
e3db84a9d0
[use] Test CGJ and ZWNJ
5 years ago
Garret Rieger
9825e3dd2e
[ENOMEM] fix access to unitialized memory.
...
If the serialize() call fails to write the object then we can't safely read varstore_prime fields. Fixes https://oss-fuzz.com/testcase-detail/5137462782066688 .
5 years ago
David Corbett
420a74f772
[USE] Fix assertion failure for joining scripts
5 years ago
ebraminio
1e48225ca3
[ENOMEM] Check whether serialize context isn't in error
5 years ago
Ebrahim Byagowi
6e32145dc9
[meson] Make compatbile with 0.47.0
5 years ago