Matthias Clasen
c221933977
[paint] Preserve foreground information
2 years ago
Matthias Clasen
6387004cad
[paint] Simplify api
...
Drop the hb_paint_context_t struct from the API, and
only pass the font where we need it.
2 years ago
Matthias Clasen
71bd5a0dfc
[paint] Resolve colors
...
We don't need to pass the index/alpha pairs to
client callbacks, and can just resolve the colors
internally.
Update test results.
2 years ago
Matthias Clasen
9be01b6bff
[paint] Pass hb_paint_context_t along
...
Replace the font argument with a hb_paint_context_t
that carries the font, the palette index and the
foreground color.
The hb_font_paint_glyph() api now takes the palette
index and the foreground color as extra arguments.
Update all callers and regenerate test results.
2 years ago
Matthias Clasen
97224f3b63
[paint] Pass font to all callbacks
...
This will lead to easier implementations.
At the same time, we change the push_clip_glyph
callback to use the font as-is, no unscaling needed.
Update all callers and expected test results.
2 years ago
Matthias Clasen
b0fa40b2ec
tests: More diagnostics
2 years ago
Matthias Clasen
290bb338bf
Dist test result files
2 years ago
Matthias Clasen
74ccc1e76d
tests: Produce useful output on failure
2 years ago
Matthias Clasen
084291108a
Tests: Fix memleak pointed out by valgrind
2 years ago
Behdad Esfahbod
d8cb7ceefb
[test] Try fixing bots with old glib
2 years ago
Matthias Clasen
2d4678b647
Add a comment
2 years ago
Matthias Clasen
30a6fd04d0
[colr] Add some tests
2 years ago
Chun-wei Fan
4622be7f84
test/fuzzing: Fix dist
...
We need to dist the repacker fuzzer test items into the tarball, along
with the items in graphs/ and sets/.
2 years ago
Garret Rieger
40342c9437
[subset] check for addition overflow in hdmx size calculation.
...
Fixes https://oss-fuzz.com/testcase-detail/4877336988483584 .
2 years ago
Garret Rieger
b5acde43ed
[subset] check pending/subsetted tag sets for alloc failure.
2 years ago
Garret Rieger
9fbe52b88d
[subset] enable instancing tests by default.
2 years ago
Garret Rieger
eda02c2ebd
[subset] Move hb_subset_preprocess to be non-experimental.
2 years ago
Garret Rieger
35233d2514
[repacker] fix fuzzer reported stack overflow.
...
Fixes https://oss-fuzz.com/testcase-detail/6014493291577344 .
2 years ago
Garret Rieger
b17fbc200b
[repacker] use memcpy to avoid alignment issues.
2 years ago
Garret Rieger
f1d3489388
[repacker] bail on failure to alloc assigned_bytes set.
...
Fixes fuzzer issue https://oss-fuzz.com/testcase-detail/5390364397928448 .
2 years ago
Garret Rieger
239a5aca02
[repacker] don't allow references to the null object in graph.
...
Fixes fuzzer issue https://oss-fuzz.com/testcase-detail/6714085985353728
2 years ago
David Corbett
260df1fa32
[indic] Support <U+0A02, U+0A40>
2 years ago
Qunxin Liu
8eadb83640
[subset] Update hb_subset_input_override_name_table API
...
Override the name string for the NameRecord identified by name_id,
platform_id, encoding_id and language_ids specified by the user.
If a record with specified name_id does not exist, this API will create
a new NameRecord with provided info and insert it to the name table.
2 years ago
Garret Rieger
16f61a1c87
[repacker] only build repacker fuzzer when experimental api is enabled.
2 years ago
Garret Rieger
de5a621322
[repacker] enforce root node having no incoming edges.
2 years ago
Garret Rieger
30e405e470
[repacker] ensure link obj indices are valid.
2 years ago
Garret Rieger
554ed06fac
[repacker] add cycle detection to the graph sort.
...
This allows us to bail early if the graph is not acyclic.
2 years ago
Garret Rieger
9e99d08470
[repacker] validate link widths during repacker setup.
2 years ago
Garret Rieger
edf7a29595
[repacker] Validate link positions before running the repacker.
2 years ago
Garret Rieger
88d437525f
[repacker] add test for repacker fuzzer.
2 years ago
Garret Rieger
6627a1ab45
[repacker] Add a initial seed for the fuzzer repacker.
2 years ago
Garret Rieger
deca30b268
[repacker] get repacker fuzzer working.
...
Additionally add helper method that allows a graph to be saved as a fuzzer seed.
2 years ago
Garret Rieger
261a605f9c
[repacker] verify graph is a dag before using the fuzzer input.
2 years ago
Garret Rieger
985b19f678
[repacker] begin implementing a fuzzer for the repacker api.
2 years ago
Garret Rieger
64e8707eca
[subset] don't use hb repacker when generating test files from fonttools.
2 years ago
Garret Rieger
ff3cac0ccd
[subset] Fix unecessary trailing 0 bytes left by ContextFormat2 pruning.
...
Uneeded rules where beind removed from the count by the bytes for them was being left in the font.
2 years ago
Garret Rieger
dd1ba328a8
[repacker] fix fuzzer timeout.
...
For https://oss-fuzz.com/testcase-detail/5845846876356608 . Only process the set of unique overflows.
2 years ago
Behdad Esfahbod
527823ccac
[unicode] Destroy user_data in set_funcs fail paths
...
This is what the font_funcs / draw_funcs do.
2 years ago
Qunxin Liu
6314aa7da4
[subset] add an experimental API that can override name strings for specified name_id
2 years ago
Behdad Esfahbod
f53ef69d59
[indic] Order left-matras inside-out
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/3863
2 years ago
Garret Rieger
2822b589bc
[subset] Include instancing tests in distribution.
...
Automatically enable them when the experimental api is enabled.
2 years ago
Qunxin Liu
8a5524833c
[instance] update OS2/.usWeightClass and .usWidthClass when
...
no-prune-unicode-ranges option is enabled
2 years ago
Behdad Esfahbod
e854739b2d
[fuzzing] Add test font for previous commit
2 years ago
Garret Rieger
db22bfb3cc
[subset] Remove Franklin from the tests which is not an open source font.
2 years ago
Garret Rieger
3394ec7048
[subset] use subset accelerator in tests.
...
This ensures it produces equivalent subsets as without the accelerator.
2 years ago
Qunxin Liu
d5fc4a73c0
[instance] add tests for featureVariations
...
Also updated the script that is used to generate tests.With fonttools,
we now do instancing first and then subsetting.
With different order of subsetting and instancing operations on the same
VF file, fonttools seems to generate 2 different font files with different
glyph set.
1. do subsetting and then instancing: this seems result in a larger glyph
set in the font file. Lookups are collected from both retained features
and all possible alternate featurevariations, this leads to a larger
glyph set after glyph closurei. And instancer doesn't redo glyph
closure, it does lookups pruning only.
2. do instancing and then subsetting: lookups are collected from
features that are replaced already and possible alternate feature
variations
2 years ago
Jonathan Kew
21b0e59414
[aat] Add test for rlig-to-aat feature mapping in Geeza Pro.
2 years ago
David Corbett
09b9a1ffdd
[USE] Allow ZWNJ at the end of a cluster
2 years ago
Qunxin Liu
470944901f
[instance] add benchmarks for instancing
3 years ago
Qunxin Liu
88c02e0024
[instance] add tests for full instancing
...
Also update previous tests with GDEF/GPOS tables
3 years ago