Commit graph

2372 commits

Author SHA1 Message Date
Behdad Esfahbod
867366ccf1 [test] Add GeezaPro tests for MacOS 15.0 2024-09-24 09:40:44 -06:00
Behdad Esfahbod
7aace3d3fc Ignore CGJ and Mongolian Variation Selectors during GPOS
Fixes https://github.com/harfbuzz/harfbuzz/issues/4869
2024-09-23 08:00:06 -06:00
Behdad Esfahbod
5e5cd10e10 Don't make variation-selectors default-ignorable if not-found set
https://github.com/harfbuzz/harfbuzz/pull/4863#issuecomment-2366908261
2024-09-23 06:30:59 -06:00
Behdad Esfahbod
b94a39d7f3 Follow up to variation-selector-not-found glyph
Addresses https://github.com/harfbuzz/harfbuzz/pull/4529#discussion_r1769638033

I'm not sure if this is an improvement. By leaving the var-selector
as default-ignorable, ligatures can form around it, and the resulting
cluster won't make it clear *which* base+var-selector could not be
resolved... That doesn't quite help font fallback the way we want.
Putting up for review.
2024-09-23 06:30:59 -06:00
Behdad Esfahbod
287046f71a [buffer] Hook up not-found-variation-selector-glyph
Fixes https://github.com/harfbuzz/harfbuzz/issues/4398
2024-09-21 12:21:56 -06:00
Qunxin Liu
6fd76e1f67 [subset] offset format fix in gvar table 2024-09-17 15:23:43 -06:00
David Corbett
e30dedbb42 [Unicode 16] Add tests 2024-09-14 12:06:08 -04:00
David Corbett
554658e3ae [Unicode 16] Update the emoji table & cluster test 2024-09-14 11:08:37 -04:00
Behdad Esfahbod
98353ecefe [test] Run shape tests with C locale as well
https://github.com/harfbuzz/harfbuzz/pull/4857
2024-09-11 11:35:15 -07:00
Alexander Grund
70334d74dc Run subset tests with C-locale
One problematic input is `--instance=wdth=112.5` which is parsed using
the users local (`strtof`).
So while in C or US locales it yields 112.5 in some European locales it
yields 112 as the dot is not valid in this position.

A European user might pass "112,5" instead but for the test the C locale
is assumed, so enforce it.

Fixes #4854
2024-09-11 12:07:04 -06:00
Qunxin Liu
634778efc0 [subset] bug fix in post table
insert retain-gid holes when retain-gids is enabled
2024-08-21 12:06:02 -06:00
Qunxin Liu
72502ef02b [instancer] dont return false when variation data is empty after partial instancing 2024-08-12 15:51:13 -06:00
Behdad Esfahbod
59a97ac02e [test] More get_table_tags test 2024-08-06 14:53:36 -06:00
Behdad Esfahbod
a55b007144 [test] Add get_table_tags test for hb-coretext 2024-08-06 14:42:37 -06:00
Behdad Esfahbod
bd79bfb653 [test] Add get_table_tags test for hb-ft 2024-08-06 13:40:06 -06:00
Behdad Esfahbod
a459753ef9 [test] Test get_table_tags of face_builder 2024-08-06 13:31:24 -06:00
Behdad Esfahbod
8896b1d57a [test] Add test for get_table_tags
So far just tests the default implementation.
2024-08-06 12:34:15 -06:00
Behdad Esfahbod
84f165646e [test] Move code around 2024-08-06 12:21:02 -06:00
Behdad Esfahbod
22e1a5a785 [test-paint] Fix warnings 2024-08-06 12:20:34 -06:00
Behdad Esfahbod
191c6eedf3 Fix Linux bot 2024-08-06 06:59:32 -06:00
Behdad Esfahbod
e0c3cbf16c [subset] Fail if source face has no glyphs
Also return nullptr if any of the input pointers are nullptr.
Before we were returning the empty face.

Fixes https://github.com/harfbuzz/harfbuzz/issues/4824
2024-08-06 06:50:54 -06:00
Behdad Esfahbod
788b469ad5 [ChainContext] Fix fast-path deviation from slow path
See comments. The input skippy was hitting the U+200D and NOT
seeing it skippable, whereas the context skippy would had.

Fixes https://github.com/harfbuzz/harfbuzz/issues/4813
2024-07-25 14:50:01 -06:00
Khaled Hosny
a38f853e83 Drop unused Makefile.sources files 2024-06-27 16:33:16 +03:00
Khaled Hosny
cf1fdf1632 Drop autotools build
Fixes https://github.com/harfbuzz/harfbuzz/issues/4720
2024-06-27 15:28:38 +03:00
Behdad Esfahbod
49c8493f5c [test] Build with HB_MINI
Also add CONFIG.md instructions for building configs with meson.

Fixes https://github.com/harfbuzz/harfbuzz/issues/4760
2024-06-20 11:17:10 -07:00
ssmid
106e4068b9 HB_SCRIPT_CANADIAN_ABORIGINAL removed, as deprecated 2024-06-20 09:11:12 -07:00
ssmid
8de7e9fdb1 deprecation cleanup: HB_BUFFER_FLAGS_DEFAULT removed 2024-06-20 09:11:12 -07:00
Behdad Esfahbod
1e2bd4983e Another include fix
https://github.com/harfbuzz/harfbuzz/issues/4740#issuecomment-2148910890
2024-06-04 23:53:36 -06:00
Behdad Esfahbod
e9870e8d54 Add missing include
https://github.com/harfbuzz/harfbuzz/issues/4740#issuecomment-2148727072
2024-06-04 20:50:06 -06:00
Behdad Esfahbod
9456f6bdfa [test] Fix a few compiler warnings 2024-06-02 10:32:07 -06:00
David Corbett
c2b5b7b9ca [ot-tags] Update IANA and OT language registries 2024-06-01 12:07:54 -07:00
Khaled Hosny
135d6537d9 test-draw-varc.c: Fix “warning: unused function” 2024-05-31 03:28:13 +03:00
Behdad Esfahbod
0037ee281f
Merge pull request #4578 from harfbuzz/varc-table
`VARC` table
2024-05-24 08:10:15 -07:00
Garret Rieger
0660a4d408 [subset] fix fuzzer found heap use after free in BASE subsetting. 2024-05-13 13:39:20 -07:00
David Corbett
0db136b1b0 [subset-cff] Shorten output of encode_num_tp 2024-05-12 09:04:02 -07:00
Qunxin Liu
7975c9cabd [instancer] bug fix for COLRv1, add missing mapping to VarIdx::NO_VARIATION 2024-05-09 08:34:14 -07:00
Garret Rieger
b74a7ecc93 Fix IUP differences accoss platforms.
- Slightly increase the tolerance to account for differences in floating point math across platforms.
- The specific issue is a fused multiply add (d = d1 + (x - x1) * scale; in hb-subset-instancer-iup.cc)
- Also fix more implicit double conversion warnings.
2024-05-08 10:23:31 -06:00
Qunxin Liu
a5c9c82692 rename expected files from *.retain-all-codepoint.* to *.all.*
This is to fix file name too long error
tar: harfbuzz-8.4.0/test/subset/data/expected/sync_vmetrics/playwrite_mm.subset.default.retain-all-codepoint.SPED=25,YEXT=520,wght=100-400,slnt=18.iup_optimize.ttf: file name is too long (cannot be split); not dumped
tar: Exiting with failure status due to previous errors
2024-05-06 13:22:49 -07:00
Qunxin Liu
3b3c154bd1 add back missing tests that were disabled when wrapped by experimental 2024-05-06 12:56:23 -07:00
Qunxin Liu
6c8985724e fix bots 2024-05-06 10:42:03 -07:00
Qunxin Liu
f614a7d309 [instancer] add/update tests for COLRv1 instancing 2024-05-06 10:41:07 -07:00
Qunxin Liu
ebcdadbf54 [instancer] add tests for instantiating BASE table 2024-05-03 17:22:16 -05:00
Behdad Esfahbod
4d2380f56d
Merge pull request #4693 from harfbuzz/promote-vf-api
[instancer] Promote partial instancing API out of experimental.
2024-05-03 14:05:56 -05:00
Garret Rieger
f145ab2f1e Disable empty_region_vardata test when running on 32bit machines. 2024-05-03 18:31:18 +00:00
Behdad Esfahbod
ba1f194a1d [gsubgpos] Reduce stack use in recursion 2024-05-02 16:37:51 -05:00
Garret Rieger
4cf606f674 [instancer] Promote partial instancing api out of experimental. 2024-05-02 21:22:18 +00:00
Behdad Esfahbod
6129c72619 [varc] Use Condition instead of ConditionSet
With more Condition formats.

df7dcc4618
https://github.com/harfbuzz/boring-expansion-spec/issues/147
2024-04-22 14:52:58 -06:00
Behdad Esfahbod
d07d70aef1 [varc] Add test 2024-04-16 17:10:46 -06:00
Behdad Esfahbod
1121d80b3f [varc] Add a conditional test font 2024-04-16 17:10:46 -06:00
Behdad Esfahbod
7c8743546f [varc] Implement conditionSets 2024-04-16 17:10:46 -06:00