David Corbett
645f4e7cdd
Unhide CGJ before ccc=0 characters
...
If a CGJ precedes a starter, then it cannot have blocked any reordering,
so it can safely be skipped.
2020-09-02 15:51:15 -07:00
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 .
2020-09-02 11:01:07 -07:00
Khaled Hosny
45de128930
Merge pull request #2661 from khaledhosny/failing-dw-build
...
[ci] Fix failing DirectWrite build
2020-09-01 04:58:50 +03:00
Khaled Hosny
fe6381d9f1
[build] Minor
2020-09-01 03:44:01 +02:00
ebraminio
a4f3a752dd
[build] hb-directwrite needs a C++ linker
2020-09-01 03:21:12 +02:00
Khaled Hosny
9c98b2b9a9
2.7.2
2020-08-29 00:39:42 +02:00
Khaled Hosny
c0a76cb519
Merge pull request #2660 from harfbuzz/arabic-shaping-in-use
...
[USE] Fix assertion failure for joining scripts
2020-08-29 00:14:01 +03:00
David Corbett
a495a54236
Ignore T & U when determining the joining scripts
2020-08-28 14:33:25 -04:00
David Corbett
420a74f772
[USE] Fix assertion failure for joining scripts
2020-08-28 14:11:48 -04:00
ebraminio
fcddf3b9b4
[docs] Minor in TESTING.md
...
Start the fuzzer with test/fuzzing/fonts seeds
2020-08-14 10:19:33 +04:30
ebraminio
99b8a84cc5
[docs] Reorder TESTING.md sections
...
And use --reconfigure where makes sense
2020-08-14 10:14:14 +04:30
ebraminio
1e48225ca3
[ENOMEM] Check whether serialize context isn't in error
2020-08-13 23:22:14 +04:30
Ebrahim Byagowi
05ef75c553
2.7.1
2020-08-13 20:54:53 +04:30
Ebrahim Byagowi
0a02f1e760
[meson] Abort if GDI/Uniscribe headers couldn't be found
2020-08-13 18:28:42 +04:30
Ebrahim Byagowi
253a8f7a51
[meson] Another approach to skip tests incompatible with MSVC
2020-08-13 18:28:42 +04:30
Ebrahim Byagowi
24b4200243
[meson] Avoid using has_headers as that has added in 0.50.0
2020-08-13 18:28:42 +04:30
Ebrahim Byagowi
411b426c69
[meson] minor
2020-08-13 18:28:42 +04:30
Ebrahim Byagowi
6e32145dc9
[meson] Make compatbile with 0.47.0
2020-08-13 18:28:42 +04:30
Ebrahim Byagowi
58209c86a0
[meson] Make compatbile with 0.49.0
...
Contains a just put together summary feature polyfill and workaround
to broken ternary operator.
2020-08-13 18:28:42 +04:30
Garret Rieger
1e4fe10b98
[ENOMEM] check for error in visited map during closure features.
2020-08-13 01:43:11 +04:30
Garret Rieger
9562239f05
[ENOMEM] check for error in lookup visited set.
2020-08-13 01:43:11 +04:30
Tom Schoonjans
eea9b59fc5
[meson] fix generating introspection
...
Only libharfbuzz_gobject is introspectable, not libharfbuzz. Therefore,
it makes no sense to target the latter for introspection: it should
instead be listed as a dependency.
2020-08-12 16:07:30 +04:30
David Corbett
7bffb5d7ba
Generate `has_arabic_joining`
2020-08-12 11:34:49 +04:30
Garret Rieger
6f754852c1
[ENOMEM] skip asserts in to_bias if serializer is in an error state.
2020-08-12 11:25:30 +04:30
Ebrahim Byagowi
057769b1a3
[fuzzer] minor
2020-08-12 02:40:55 +04:30
Ebrahim Byagowi
0417938011
[fuzzer] Mark alloc_state as unused
...
It is really unused when failing-alloc isn't on.
2020-08-12 02:40:55 +04:30
Ebrahim Byagowi
2af58c3518
Revert "Remove cmake build files"
...
This reverts commit 4e572c9407
.
2020-08-12 01:00:33 +04:30
Ebrahim Byagowi
ef2e380342
Revert "Remove cmake-config support of HarfBuzz"
...
This reverts commit 75efa89343
.
2020-08-12 01:00:33 +04:30
Ebrahim Byagowi
0ca3557048
Turn -Wunused-but-set-variable to warning
...
As #2555 turned out some glib headers are imposing that so let's turn it to warning
2020-08-12 00:38:00 +04:30
Ebrahim Byagowi
5193357832
Revert "Remove autotools build support"
...
This reverts commit 01ac32aab2
.
2020-08-11 23:51:59 +04:30
Ebrahim Byagowi
9748ae7299
Revert "Reordering fails when GDEF table is absent #2140 "
...
This reverts commit f4cd99f28e
.
As requested in https://github.com/harfbuzz/harfbuzz/issues/2516#issuecomment-670969185
2020-08-11 22:51:48 +04:30
ebraminio
d03eecb4d6
[glyf] minor
...
style improvement
2020-08-11 16:40:40 +04:30
ebraminio
732a9164d9
[gvar] minor
2020-08-11 16:37:55 +04:30
ebraminio
c0107c1e6e
[ci] test experimental APIs in Arch Linux and sanitizers
2020-08-10 14:30:34 +04:30
ebraminio
0c1561894a
[glyf] minor
2020-08-10 08:52:01 +04:30
Ebrahim Byagowi
f06d7331e8
[glyf] minor
2020-08-10 08:43:54 +04:30
Ebrahim Byagowi
db96c7f67a
[glyf] protect CompositeGlyph fields
...
Introduce methods instead
2020-08-10 08:43:54 +04:30
ebraminio
e5fe363aa5
[glyf] Minor, don't pass accelerator_t to points_aggregator_t
...
No need to pass it to aggregator itself
2020-08-10 07:39:36 +04:30
ebraminio
2b9927f7e1
[glyf] minor
...
No need to pass glyph_for_gid as a lambda now that we are passing the accelerator itself
2020-08-10 06:26:21 +04:30
Behdad Esfahbod
fce64a407d
Minor
2020-08-08 14:05:03 -06:00
Ebrahim Byagowi
ffe06c8f04
[glyf] Guard all the public APIs against null pool runs
...
Fixes https://crbug.com/oss-fuzz/24575 and https://crbug.com/oss-fuzz/24737
2020-08-08 13:43:49 +04:30
Ebrahim Byagowi
01ac32aab2
Remove autotools build support
2020-08-07 23:28:12 +04:30
Ryan Schmidt
3d164d5883
Use printf instead of echo -n in autogen.sh
...
"echo -n" is not portable and on some POSIX systems it literally prints "-n".
2020-08-07 10:45:35 +04:30
Ebrahim Byagowi
1f519c2567
[glyf] Optimize retrieval of hmtx/vmtx/gvar
...
This should make glyf/gvar faster as makes it to invoke less table wrapper atomic operations and things.
$ meson build -Dexperimental_api=true --buildtype=release && ninja -Cbuild && build/perf/perf "--benchmark_filter=glyf.*- ot -"
Before:
extents/glyf - ot - SourceSerifVariable 46091 ns 46036 ns 16173
extents/glyf/vf - ot - SourceSerifVariable 4160142 ns 4154913 ns 174
extents/glyf - ot - Comfortaa 25754 ns 25726 ns 27030
extents/glyf/vf - ot - Comfortaa 2627804 ns 2624596 ns 265
extents/glyf - ot - Roboto 33556 ns 33540 ns 18513
draw/glyf - ot - SourceSerifVariable 2716848 ns 2715438 ns 256
draw/glyf/vf - ot - SourceSerifVariable 4602379 ns 4598907 ns 151
draw/glyf - ot - Comfortaa 1659364 ns 1658142 ns 417
draw/glyf/vf - ot - Comfortaa 2845100 ns 2842549 ns 246
draw/glyf - ot - Roboto 1571509 ns 1570060 ns 442
After:
extents/glyf - ot - SourceSerifVariable 34738 ns 34713 ns 21332
extents/glyf/vf - ot - SourceSerifVariable 3700510 ns 3698104 ns 187
extents/glyf - ot - Comfortaa 21604 ns 21595 ns 31907
extents/glyf/vf - ot - Comfortaa 2324787 ns 2323440 ns 296
extents/glyf - ot - Roboto 31259 ns 31246 ns 21814
draw/glyf - ot - SourceSerifVariable 2689230 ns 2687589 ns 260
draw/glyf/vf - ot - SourceSerifVariable 4625135 ns 4622036 ns 131
draw/glyf - ot - Comfortaa 1690336 ns 1689454 ns 402
draw/glyf/vf - ot - Comfortaa 2898748 ns 2897074 ns 241
draw/glyf - ot - Roboto 1570911 ns 1570138 ns 440
2020-08-07 01:21:19 +04:30
Ebrahim Byagowi
0907c10214
[gvar] minor
2020-08-07 00:15:32 +04:30
Ebrahim Byagowi
679fac87df
Skip hb_shape if buffer object is immutable
2020-08-06 23:47:35 +04:30
Ebrahim Byagowi
55c41f219f
[glyf] Clamp advance value result
...
Fixes a sanitizer complain https://circleci.com/gh/harfbuzz/harfbuzz/150247 revealed by 02d1ec1
2020-08-06 23:37:43 +04:30
Ebrahim Byagowi
02d1ec1658
[gvar] Don't fail on imprefect gvar
...
No need to fail even if gvar doesn't have that much glyphs
2020-08-06 22:18:35 +04:30
Ebrahim Byagowi
ec17b62457
[var] Apply variations on empty glyphs
...
It was ignoring empty glyphs for no good reason, this fixes it.
Fixes #2618
2020-08-06 20:16:11 +04:30
Ebrahim Byagowi
5cab55ca90
[gvar] minor
2020-08-06 18:54:58 +04:30