Garret Rieger
c5c13006a1
[subset] fix memory leaks found in https://oss-fuzz.com/testcase-detail/5179935334465536
2021-03-31 12:37:45 -06:00
Garret Rieger
adca4ce071
[subset] fixes https://oss-fuzz.com/testcase-detail/6173520787800064 .
...
Caused by incorrect bounds check in glyph closure for context lookups.
2021-03-30 15:44:41 -06:00
Garret Rieger
752e393ad2
[subset] avoid calling clear on null pool set.
2021-03-30 15:12:52 -06:00
Garret Rieger
8741914a80
[subset] fix memory leak when map insert fails.
2021-03-29 18:02:32 -06:00
Garret Rieger
5b6da6d2f0
[subset] add fuzzer test case.
2021-03-29 17:41:07 -06:00
Garret Rieger
a804a0c903
[subset] add fuzzer test case.
2021-03-29 17:15:22 -06:00
Qunxin Liu
95230e291d
[subset] support subsetting GSUB8
2021-03-29 15:54:11 -06:00
Garret Rieger
0104409959
Fix repack_tests for distcheck.
2021-03-17 15:53:58 -07:00
Garret Rieger
b8b8c58b9f
[subset] add tests that check for successful repacking of a real font file.
2021-03-17 15:53:58 -07:00
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.
2021-03-17 14:24:04 -07:00
Garret Rieger
69d772e522
[subset] Fixed test gsub5 test files.
2021-03-17 15:22:07 -06:00
Qunxin Liu
0e1c0fa404
[subset] optimize glyph closure method: step 5
...
add testcase and some fixes
2021-03-17 15:22:07 -06:00
Garret Rieger
1b79b8cd2d
[subset] update gpos tests to reflect updated behaviour.
2021-03-16 15:23:11 -07:00
Garret Rieger
b1b1486d07
[subset] update expected files to not include cmap12 pruning.
2021-03-16 14:49:35 -07:00
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.
2021-03-16 14:49:35 -07:00
Khaled Hosny
4c34478b28
Merge pull request #2899 from harfbuzz/ci-fix
...
[ci] Don’t install meson from its master branch
2021-03-16 10:37:49 +02:00
Khaled Hosny
f2d08578e7
[tests] Increase shape-fuzzer timeout
2021-03-16 01:15:40 +02:00
Behdad Esfahbod
15f3ef0136
[test] Fix output format
2021-03-15 16:01:35 -06:00
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
2021-03-04 13:09:32 -08:00
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
2021-03-02 16:30:09 -07:00
Behdad Esfahbod
1c693e8c28
[test] Fix unused-var warning
2021-02-22 17:11:36 -07:00
justvanrossum
1551f3d518
fixing more expected test results
2021-02-19 16:53:21 -07:00
justvanrossum
79e4f436e7
Apply rounding correctly when calculating glyph extents for CFF and CFF2; adjust expected test results
2021-02-19 16:53:21 -07:00
justvanrossum
d01ebeae21
calculate extents based on scaled then rounded values; undo two of the earlier test result adjustments
2021-02-19 16:53:21 -07:00
justvanrossum
1d02e9c63b
two more adjusted expected extents results (still not convinced this is the right thing, though)
2021-02-19 16:53:21 -07:00
justvanrossum
cd0babe6a6
adjust expected test result
2021-02-19 16:53:21 -07:00
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.
2021-02-19 16:23:22 -07:00
Garret Rieger
5ca353a2d0
[subset] fix heap buffer overflow found by fuzzer.
2021-02-16 12:43:02 -07:00
David Corbett
751ed68fee
[indic] Fix shaping of U+0B55 ORIYA SIGN OVERLINE
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/2849
2021-02-14 12:47:34 -05:00
Garret Rieger
00d9276343
Add gpos9 expected files to Makefile.am
2021-02-11 13:41:31 -07:00
Garret Rieger
08a4997fde
[subset] Add subset support for Extension lookups (GPOS 9, GSUB 7).
2021-02-11 13:41:31 -07:00
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.
2021-02-10 19:13:51 -07:00
Behdad Esfahbod
c7d232ce4e
Merge pull request #2701 from googlefonts/Mark-To-Ligature_grieger
...
[subset] GPOS 5 MarkToLigature subsetting support
2021-02-10 18:13:38 -07:00
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.
2021-02-10 23:22:02 +02:00
Behdad Esfahbod
6a3fd94f3b
Merge pull request #2699 from googlefonts/gpos_8
...
[subset] Add a more complex layout subsetting test case and fix the issues it exposed.
2021-02-09 20:49:04 -05:00
Behdad Esfahbod
33a0f0b686
[test] Remove fuzzed test font that triggers virus alert
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/2750
2021-02-09 12:55:45 -07:00
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.
2021-01-26 10:22:07 -08:00
Garret Rieger
a4c3732f59
[ENOMEM] fix set clear() causing corruption if the set is in_error().
2021-01-21 12:12:05 -07:00
David Corbett
b2e7bb2a7c
Don’t map BCP 47 to coincidentally similar OT tag
2020-11-22 19:35:47 -08:00
David Corbett
17da41bd06
Update language system tag registry to OT 1.8.4
2020-11-18 11:13:35 -08:00
Khaled Hosny
c2cdcd4901
[tests] warning: unused variable 'num_glyphs'
2020-10-17 21:57:27 +02:00
David Corbett
0792690b73
[use] Skip WJ and ZWJ when clustering
2020-10-16 22:39:46 -07:00
Khaled Hosny
84dd65a874
[test] Remove timeout from test runners
...
See https://github.com/harfbuzz/harfbuzz/issues/2707#issuecomment-707744079
This wasn’t inconsistent as well, HB_TEST_SUBSET_FUZZER_TIMEOUT defaulted
to 12 in the test runner, but it was overridden to 50 in meson.build,
and then meson has its own test timeout.
2020-10-15 00:49:02 -07:00
Khaled Hosny
fa771a7f85
[tests] Fix memory leak in test
...
To make valgrind bot happy.
2020-10-11 13:15:39 -07:00
David Corbett
1d53268dfe
Fix two-way mapping of "man" and 'MNK '
2020-10-11 11:38:40 -07:00
Behdad Esfahbod
540d2cdddb
[tests/buffer] Revert unintended whitespace changes
...
From 9e5538d6a3
Tried squashing into, but too much merge conflict.
2020-10-09 22:27:55 -06:00
Behdad Esfahbod
04658ec48f
[tests/buffer] Update tests for previous commit
2020-10-09 22:27:55 -06:00
Simon Cozens
7c0bc0bb92
Serialize invalid buffer to !! (text) or [] (json)
...
There is no generic deserialize - you have to choose glyphs or unicode - so there is no way to deserialize this buffer.
2020-10-09 22:27:55 -06:00
Simon Cozens
150f391438
Prohibit mixed glyphs/unicode buffers in deserialization
2020-10-09 22:27:55 -06:00
Simon Cozens
3d3c87e7e7
Put the flags back in and serialize clusters.
...
Note that now JSON glyph buffers and Unicode buffers look very similar, except for the g/u property difference.
2020-10-09 22:27:55 -06:00