Matthias Clasen
44b48845b7
Add tests for hb_color_line_t
...
Test a few things that were broken with the
ft implementation before.
2022-12-23 16:28:53 -05:00
Behdad Esfahbod
a4a86c0ec2
[test-paint] g_test_message
2022-12-23 13:52:22 -07:00
Behdad Esfahbod
dcab567988
[test-paint] Don't use g_test_fail_print() for older glib
2022-12-23 13:47:37 -07:00
Matthias Clasen
8e197f50da
Add missing paint test results
2022-12-23 13:40:02 -07:00
Matthias Clasen
3b021c5568
Run paint tests with ft font funcs
2022-12-23 13:37:59 -07:00
Matthias Clasen
ca190aaba4
Split off the hb-paint tests
...
They belong in their own file.
2022-12-23 13:37:59 -07:00
Matthias Clasen
ee7bbdf372
tests: Update expected results
...
These were changed by fixes for glyph transforms.
2022-12-23 13:37:59 -07:00
Matthias Clasen
3993a40703
test: Add some verification hints
2022-12-23 13:37:59 -07:00
Matthias Clasen
47dbebff39
[paint] Add COLRv0 tests
2022-12-23 13:37:59 -07:00
Behdad Esfahbod
3c972867b9
More s/hb_font_get_glyph_shape/hb_font_draw_glyph/
2022-12-23 13:37:59 -07:00
Matthias Clasen
c221933977
[paint] Preserve foreground information
2022-12-23 13:37:59 -07:00
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.
2022-12-23 13:37:59 -07:00
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.
2022-12-23 13:37:59 -07:00
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.
2022-12-23 13:37:59 -07:00
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.
2022-12-23 13:37:59 -07:00
Matthias Clasen
b0fa40b2ec
tests: More diagnostics
2022-12-23 13:37:59 -07:00
Matthias Clasen
290bb338bf
Dist test result files
2022-12-23 13:37:59 -07:00
Matthias Clasen
74ccc1e76d
tests: Produce useful output on failure
2022-12-23 13:37:59 -07:00
Matthias Clasen
084291108a
Tests: Fix memleak pointed out by valgrind
2022-12-23 13:37:59 -07:00
Behdad Esfahbod
d8cb7ceefb
[test] Try fixing bots with old glib
2022-12-23 13:37:59 -07:00
Matthias Clasen
2d4678b647
Add a comment
2022-12-23 13:37:59 -07:00
Matthias Clasen
30a6fd04d0
[colr] Add some tests
2022-12-23 13:37:59 -07:00
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/.
2022-12-22 06:44:04 -07:00
Garret Rieger
40342c9437
[subset] check for addition overflow in hdmx size calculation.
...
Fixes https://oss-fuzz.com/testcase-detail/4877336988483584 .
2022-12-21 16:44:06 -07:00
Garret Rieger
b5acde43ed
[subset] check pending/subsetted tag sets for alloc failure.
2022-12-13 15:31:40 -07:00
Garret Rieger
9fbe52b88d
[subset] enable instancing tests by default.
2022-12-12 20:24:24 +00:00
Garret Rieger
eda02c2ebd
[subset] Move hb_subset_preprocess to be non-experimental.
2022-12-08 16:32:24 -07:00
Garret Rieger
35233d2514
[repacker] fix fuzzer reported stack overflow.
...
Fixes https://oss-fuzz.com/testcase-detail/6014493291577344 .
2022-12-07 10:32:56 -07:00
Garret Rieger
b17fbc200b
[repacker] use memcpy to avoid alignment issues.
2022-12-05 14:13:47 -07:00
Garret Rieger
f1d3489388
[repacker] bail on failure to alloc assigned_bytes set.
...
Fixes fuzzer issue https://oss-fuzz.com/testcase-detail/5390364397928448 .
2022-12-05 14:13:47 -07:00
Garret Rieger
239a5aca02
[repacker] don't allow references to the null object in graph.
...
Fixes fuzzer issue https://oss-fuzz.com/testcase-detail/6714085985353728
2022-12-05 14:13:47 -07:00
David Corbett
260df1fa32
[indic] Support <U+0A02, U+0A40>
2022-12-04 10:46:47 -07:00
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.
2022-12-02 18:05:53 -07:00
Garret Rieger
16f61a1c87
[repacker] only build repacker fuzzer when experimental api is enabled.
2022-12-02 00:02:14 +00:00
Garret Rieger
de5a621322
[repacker] enforce root node having no incoming edges.
2022-12-01 23:37:16 +00:00
Garret Rieger
30e405e470
[repacker] ensure link obj indices are valid.
2022-12-01 22:12:59 +00:00
Garret Rieger
554ed06fac
[repacker] add cycle detection to the graph sort.
...
This allows us to bail early if the graph is not acyclic.
2022-12-01 21:52:37 +00:00
Garret Rieger
9e99d08470
[repacker] validate link widths during repacker setup.
2022-12-01 20:17:41 +00:00
Garret Rieger
edf7a29595
[repacker] Validate link positions before running the repacker.
2022-12-01 20:17:41 +00:00
Garret Rieger
88d437525f
[repacker] add test for repacker fuzzer.
2022-12-01 20:17:40 +00:00
Garret Rieger
6627a1ab45
[repacker] Add a initial seed for the fuzzer repacker.
2022-12-01 20:17:40 +00:00
Garret Rieger
deca30b268
[repacker] get repacker fuzzer working.
...
Additionally add helper method that allows a graph to be saved as a fuzzer seed.
2022-12-01 20:17:40 +00:00
Garret Rieger
261a605f9c
[repacker] verify graph is a dag before using the fuzzer input.
2022-12-01 20:17:40 +00:00
Garret Rieger
985b19f678
[repacker] begin implementing a fuzzer for the repacker api.
2022-12-01 20:17:39 +00:00
Garret Rieger
64e8707eca
[subset] don't use hb repacker when generating test files from fonttools.
2022-11-24 18:24:50 +00:00
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.
2022-11-23 23:50:49 +00:00
Garret Rieger
dd1ba328a8
[repacker] fix fuzzer timeout.
...
For https://oss-fuzz.com/testcase-detail/5845846876356608 . Only process the set of unique overflows.
2022-11-21 16:24:48 -07:00
Behdad Esfahbod
527823ccac
[unicode] Destroy user_data in set_funcs fail paths
...
This is what the font_funcs / draw_funcs do.
2022-11-19 15:19:08 -07:00
Qunxin Liu
6314aa7da4
[subset] add an experimental API that can override name strings for specified name_id
2022-11-08 14:10:25 -07:00
Behdad Esfahbod
f53ef69d59
[indic] Order left-matras inside-out
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/3863
2022-11-05 15:40:05 -06:00