Ross Burton
5aff83104e
[build] generate hb-version.h once at configure time with Meson
...
Currently with Meson hb-version.h is generated during the build without
any explicit dependencies which can result in build failures due races
over the file.
Change this to be generated at configure time, so that the file is always
generated once before the build itself.
Closes #2667
2020-09-08 09:42:27 +01:00
Ross Burton
bc1c93fbe0
[build] No need to pass source directory to gen-hb-version
...
The input file is by definition in the source directory, so dirname()
that instead of needing the directory to be passed.
Needed because a follow-up commit will change when this is called, and the
source directory isn't trivially available at that point.
2020-09-08 09:40:56 +01:00
David Corbett
faf09f5466
[USE] Support hieroglyph clusters
2020-09-02 19:50:49 -04:00
David Corbett
06f49fc8ae
[USE] Update to the 2020-08-13 USE specification
...
This also uses the data files from
<78b2134fdc/USE
>.
2020-09-02 19:50:49 -04:00
David Corbett
e3db84a9d0
[use] Test CGJ and ZWNJ
2020-09-02 15:51:15 -07:00
David Corbett
6a38adeb57
[use] Skip most default ignorables when clustering
2020-09-02 15:51:15 -07:00
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