Garret Rieger
dde0a2b071
[repacker] track estimated coverage size during PairPosFormat1 split point analysis.
2022-08-05 22:30:37 +00:00
Garret Rieger
b37e8bef0e
[repacker] count size of the current class at the split point in the next segment.
2022-08-05 22:16:20 +00:00
Garret Rieger
0e48a65d32
[repacker] estimate size of classDef1 and coverage during PairPos2 split point analysis.
2022-08-05 20:19:11 +00:00
Garret Rieger
2264df6da3
[repacker] add utility that can calculate the size of Coverage+ClassDef via incremental class inclusion.
2022-08-05 18:33:03 +00:00
Garret Rieger
5d824c09c0
[repacker] during table splits don't mutate shared coverage/classdef in place.
...
If other subtables are sharing coverage with a subtable being split we have to duplicate the coverage/classdef tables before they are modified during the shrink operation.
2022-08-05 01:37:14 +00:00
Garret Rieger
e1ab355056
[repacker] correct lookup link insertion.
2022-08-05 01:25:16 +00:00
Garret Rieger
a733a9afa5
[repacker] insert new subtables immediately after the subtable they split from in the lookup.
2022-08-05 00:32:47 +00:00
Garret Rieger
506547c958
[repacker] Use hb_pair_t constructor instead of hb_pair ().
...
hb_pair was causing corrupted gid values.
2022-08-04 21:36:21 +00:00
Garret Rieger
fdd1952c75
[repacker] PairPosFormat2 splitting - fix coverage and classdef splitting.
...
The old code was splitting based on coverage index, but should have been splitting on class value.
2022-08-04 19:21:16 +00:00
Garret Rieger
b154b1e4c3
[repacker] pull out PairPosFormat1,2::do_split() into a common helper method.
2022-08-04 01:37:21 +00:00
Garret Rieger
88e0dd02cb
[repacker] add sanitization for PairPosFormat2.
2022-08-04 01:03:07 +00:00
Garret Rieger
51a5060273
[repacker] add test for splitting a PairPos2 w/ device tables.
2022-08-03 22:30:42 +00:00
Garret Rieger
54fab21cb1
[repacker] get basic pair pos 2 split test working.
2022-08-03 21:57:37 +00:00
Garret Rieger
60d6ffb375
[repacker] always duplicate classDef2 when splitting a PairPos2.
...
Splits are done in a way that it shouldn't be possible to share the classDef2 between split PairPos2's so pre-emptively duplicate it.
2022-08-03 21:01:23 +00:00
Garret Rieger
6be152420f
[repacker] add basic test for PairPos2 splitting.
2022-08-03 19:02:20 +00:00
Garret Rieger
65ed82fde5
[repacker] PairPosFormat2::do_split.
2022-08-02 22:22:42 +00:00
Garret Rieger
f43055f35a
[repacker] Implement PairPosFormat2::shrink.
2022-08-02 22:16:29 +00:00
Garret Rieger
9f2a44640c
[repack] implement device table transfer for PairPosFormat2.
2022-08-02 21:47:53 +00:00
Garret Rieger
22eae32b3b
[repacker] add classDef1 clone_range to PairPosFormat2 split.
2022-08-02 21:04:38 +00:00
Garret Rieger
68b90153ea
[repacker] Add class def sanitize and range cloning.
2022-08-02 20:58:35 +00:00
Garret Rieger
ca0df565f7
[repacker] extract coverage cloning into helper.
2022-08-02 20:04:46 +00:00
Garret Rieger
7f4b2037a5
[repacker] include size of device tables when determining PairPos2 split points.
2022-08-02 18:43:25 +00:00
Garret Rieger
58fdbd8e5d
[repacker] begin adding PairPosFormat2 splitting support.
2022-08-02 17:32:13 +00:00
Behdad Esfahbod
e387b3acd3
[ft] Try harder
2022-08-02 10:02:48 -06:00
Khaled Hosny
40a3468906
hb-ft: cast to float to help windows sqrtf
2022-08-02 10:02:48 -06:00
Behdad Esfahbod
6549aec89d
[SingleSubstFormat1] Help avoid timeouts in closure() some more
...
For https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=49712
2022-08-01 13:11:14 -06:00
Behdad Esfahbod
ba9b20534c
[ft] Try working around fonts with transform set
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/3772
2022-08-01 12:42:05 -06:00
psykose
04d28d94e5
[repacker] fix signedness of char in tests
2022-08-01 11:48:57 -06:00
Khaled Hosny
f1f2be776b
5.1.0
2022-07-31 15:48:32 +02:00
Khaled Hosny
d6e55f1baf
[automake] Use LANG=C when generating harfbuzz*.cc
...
Since `sort` is locale-dependent.
2022-07-30 23:35:47 +02:00
Behdad Esfahbod
a722b3e666
[shape] Only add any unsafe-to-concat flag if requested
...
Previously it was confusing as random incorrect flags were produced.
2022-07-30 14:33:33 -06:00
Behdad Esfahbod
0a31cfb225
[buffer] Fix produce-tatweel enum value
2022-07-30 14:32:58 -06:00
Behdad Esfahbod
a0111e4fab
[graph] Fix warning
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/3766
2022-07-30 12:09:45 -06:00
Behdad Esfahbod
fc9e6ae8d9
[run-tests.py] Write out the failing test
2022-07-30 12:02:36 -06:00
Behdad Esfahbod
083d4ef5c4
[harfbuzz-subset.cc] Revert back the sort order
...
Generator seems unstable.
2022-07-30 11:53:56 -06:00
Behdad Esfahbod
065f1e33c8
Merge pull request #3763 from harfbuzz/split_pair_pos
...
[repacker] Add ability for repacker to pre split PairPosFormat1 subtables.
2022-07-30 11:09:33 -06:00
Behdad Esfahbod
7c9e1ffa7c
Merge pull request #3762 from harfbuzz/safe-to-kashida
...
Prototype glyph flag safe-to-kashida
2022-07-30 10:33:27 -06:00
Behdad Esfahbod
f43dadb8ee
Rename kashida -> tatweel
2022-07-30 10:23:03 -06:00
Behdad Esfahbod
73c3ac9172
Document kashida stuff
2022-07-30 10:21:34 -06:00
Behdad Esfahbod
4f09ea5e6b
[hb-shape] Add --safe-to-insert-kashida flag
...
https://github.com/harfbuzz/harfbuzz/pull/3762
2022-07-30 10:12:24 -06:00
Behdad Esfahbod
d277addb2f
[buffer] Add HB_BUFFER_FLAG_PRODUCE_SAFE_TO_INSERT_KASHIDA
2022-07-30 10:10:21 -06:00
Behdad Esfahbod
915e12ccbb
Prototype glyph flag safe-to-kashida
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/3721
2022-07-30 10:05:36 -06:00
Behdad Esfahbod
5e31a582c9
[emoji] Bump compression level
2022-07-30 00:09:33 -06:00
Behdad Esfahbod
56a5bc3bd0
[emoji] Regenerate test data
...
Fix generator.
2022-07-30 00:08:44 -06:00
Behdad Esfahbod
90a3355e66
[ucd-table] Use more compact compression numbers
...
Doesn't show any slowdown in benchmarks.
2022-07-30 00:01:50 -06:00
Behdad Esfahbod
23dbd35ca3
Merge branch 'main' into split_pair_pos
2022-07-29 19:51:57 -06:00
Behdad Esfahbod
a5d9012e94
Revert "[ot-font] Minor simplification"
...
This reverts commit 28c02b3768
.
Old code was used in case of memory allocation failure (as shown
by fuzzers...)
2022-07-29 19:51:00 -06:00
Garret Rieger
9578c44ea2
[repacker] add HB_FALLTRHOUGH.
2022-07-29 22:21:32 +00:00
Garret Rieger
6a5e2cb2f8
[repacker] add todo.
2022-07-29 22:21:32 +00:00
Garret Rieger
14f95ee0cf
[repacker] re-count shared node sizes in split PairPos segments.
2022-07-29 22:21:32 +00:00