Commit Graph

13900 Commits

Author SHA1 Message Date
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
Garret Rieger 3b91fb2a9f [repacker] cleanup todo. 2022-07-29 22:21:31 +00:00
Garret Rieger a0b8893e46 [repacker] add Coverage sanitize. 2022-07-29 22:21:31 +00:00
Garret Rieger 38846f41d3 [repacker] more TODO cleanup. 2022-07-29 22:21:31 +00:00
Garret Rieger 46c1fa7d1b [repacker] sanitize PairPos during subtable extension. 2022-07-29 22:21:31 +00:00
Garret Rieger 2a5902ee50 [repacker] cleanup. 2022-07-29 22:21:31 +00:00
Garret Rieger 674f0194a3 [repacker] add extension pairpos split test. 2022-07-29 22:21:31 +00:00
Garret Rieger 1d2516f037 [repack] get basic pairpos split test working. 2022-07-29 22:21:31 +00:00
Garret Rieger fb3f6ad7c0 [repacker] ensure lookup map is updated when lookup memory location changes. 2022-07-29 22:21:31 +00:00
Garret Rieger 4e7360f78d [repacker] begin adding tests for PairPosFormat1 splitting. 2022-07-29 22:21:31 +00:00