Khaled Hosny
773fe85018
[layout] Blocklist the GDEF table of various Courier New versions
...
These files have incorrectly give several base glyphs GDEF mark glyph
class leading in zeroing there advance widths.
Fixes https://github.com/harfbuzz/harfbuzz/issues/4936
3 months ago
Garret Rieger
b0d52abe97
[subset] consider variation selectors subsetting cmap14
...
cmap14 subsetting code was not considering variation selectors in the input unicode set when deciding which variant glyphs to keep. This updates subsetting to only keeps variant glyphs if their variation selector code point is in the input unicodes set.
For https://github.com/harfbuzz/harfbuzz/issues/4911
3 months ago
Qunxin Liu
622e9c33c3
[instancer] fix for incorrect offset calculation when we have gvar padding
3 months ago
Behdad Esfahbod
2dc6334133
[tests] Remove invalid tests from collections.tests
...
Previously we silently returned the empty face if face_index
was out of range. With util/ now using the new API
hb_font_face_create_from_file_or_fail(), that returns a nullptr
face now. So, adjust tests.
4 months ago
Behdad Esfahbod
755929c48d
Fix more compiler warnings
...
In case FreeType is not available.
4 months ago
Khaled Hosny
4d1f6e049c
[COLR] Enable COLRv0 support in get_extents()
...
paint_glyph() supports COLRv0 but this code is never reached because of
the early return if version is not 1. This early return seems to be from
before COLRv0 extents were supported.
4 months ago
Julien Nabet
e157205499
unused-parameter in test/fuzzing/hb-draw-fuzzer.cc
...
../test/fuzzing/hb-draw-fuzzer.cc:19:28: error: unused parameter 'dfuncs' [-Werror,-Wunused-parameter]
_move_to (hb_draw_funcs_t *dfuncs, void *draw_data_,
^
../test/fuzzing/hb-draw-fuzzer.cc:22:10: error: unused parameter 'user_data' [-Werror,-Wunused-parameter]
void *user_data)
^
../test/fuzzing/hb-draw-fuzzer.cc:31:28: error: unused parameter 'dfuncs' [-Werror,-Wunused-parameter]
_line_to (hb_draw_funcs_t *dfuncs, void *draw_data_,
^
../test/fuzzing/hb-draw-fuzzer.cc:34:10: error: unused parameter 'user_data' [-Werror,-Wunused-parameter]
void *user_data)
^
../test/fuzzing/hb-draw-fuzzer.cc:44:33: error: unused parameter 'dfuncs' [-Werror,-Wunused-parameter]
_quadratic_to (hb_draw_funcs_t *dfuncs, void *draw_data_,
^
../test/fuzzing/hb-draw-fuzzer.cc:46:15: error: unused parameter 'control_x' [-Werror,-Wunused-parameter]
float control_x, float control_y,
^
../test/fuzzing/hb-draw-fuzzer.cc:46:32: error: unused parameter 'control_y' [-Werror,-Wunused-parameter]
float control_x, float control_y,
^
../test/fuzzing/hb-draw-fuzzer.cc:48:15: error: unused parameter 'user_data' [-Werror,-Wunused-parameter]
void *user_data)
^
../test/fuzzing/hb-draw-fuzzer.cc:58:29: error: unused parameter 'dfuncs' [-Werror,-Wunused-parameter]
_cubic_to (hb_draw_funcs_t *dfuncs, void *draw_data_,
^
../test/fuzzing/hb-draw-fuzzer.cc:60:11: error: unused parameter 'control1_x' [-Werror,-Wunused-parameter]
float control1_x, float control1_y,
^
../test/fuzzing/hb-draw-fuzzer.cc:60:29: error: unused parameter 'control1_y' [-Werror,-Wunused-parameter]
float control1_x, float control1_y,
^
../test/fuzzing/hb-draw-fuzzer.cc:61:11: error: unused parameter 'control2_x' [-Werror,-Wunused-parameter]
float control2_x, float control2_y,
^
../test/fuzzing/hb-draw-fuzzer.cc:61:29: error: unused parameter 'control2_y' [-Werror,-Wunused-parameter]
float control2_x, float control2_y,
^
../test/fuzzing/hb-draw-fuzzer.cc:63:11: error: unused parameter 'user_data' [-Werror,-Wunused-parameter]
void *user_data)
^
../test/fuzzing/hb-draw-fuzzer.cc:73:31: error: unused parameter 'dfuncs' [-Werror,-Wunused-parameter]
_close_path (hb_draw_funcs_t *dfuncs, void *draw_data_,
^
../test/fuzzing/hb-draw-fuzzer.cc:75:13: error: unused parameter 'user_data' [-Werror,-Wunused-parameter]
void *user_data)
^
16 errors generated.
4 months ago
Julien Nabet
8de0d91166
missing-field-initializers in test/api/test-ot-face.c
...
FAILED: test/fuzzing/hb-shape-fuzzer.p/hb-shape-fuzzer.cc.o clang++ -Itest/fuzzing/hb-shape-fuzzer.p -Itest/fuzzing -I../test/fuzzing -I. -I.. -Isrc -I../src -fdiagnostics-color=always -D_GLIBCXX_ASSERTIONS=1 -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -std=c++11 -fno-exceptions -O3 -fno-exceptions -fno-rtti -fno-threadsafe-statics -fvisibility-inlines-hidden -DHAVE_CONFIG_H -Wall -Wextra -Werror -MD -MQ test/fuzzing/hb-shape-fuzzer.p/hb-shape-fuzzer.cc.o -MF test/fuzzing/hb-shape-fuzzer.p/hb-shape-fuzzer.cc.o.d -o test/fuzzing/hb-shape-fuzzer.p/hb-shape-fuzzer.cc.o -c ../test/fuzzing/hb-shape-fuzzer.cc In file included from ../test/fuzzing/hb-shape-fuzzer.cc:9: ../test/fuzzing/../api/test-ot-face.c:47:34: error: missing field 'y_bearing' initializer [-Werror,-Wmissing-field-initializers]
hb_glyph_extents_t extents = {0};
^
../test/fuzzing/../api/test-ot-face.c:85:55: error: missing field 'enable' initializer [-Werror,-Wmissing-field-initializers]
hb_aat_layout_feature_selector_info_t setting = {0};
^
2 errors generated.
4 months ago
David Corbett
b6196986d7
[USE] Update the data files
...
This uses the data files from
<e00698c07a/USE
>.
4 months ago
Behdad Esfahbod
867366ccf1
[test] Add GeezaPro tests for MacOS 15.0
5 months ago
Behdad Esfahbod
7aace3d3fc
Ignore CGJ and Mongolian Variation Selectors during GPOS
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/4869
5 months ago
Behdad Esfahbod
5e5cd10e10
Don't make variation-selectors default-ignorable if not-found set
...
https://github.com/harfbuzz/harfbuzz/pull/4863#issuecomment-2366908261
5 months ago
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.
5 months ago
Behdad Esfahbod
287046f71a
[buffer] Hook up not-found-variation-selector-glyph
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/4398
5 months ago
Qunxin Liu
6fd76e1f67
[subset] offset format fix in gvar table
5 months ago
David Corbett
e30dedbb42
[Unicode 16] Add tests
5 months ago
David Corbett
554658e3ae
[Unicode 16] Update the emoji table & cluster test
5 months ago
Behdad Esfahbod
98353ecefe
[test] Run shape tests with C locale as well
...
https://github.com/harfbuzz/harfbuzz/pull/4857
5 months ago
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
5 months ago
Qunxin Liu
634778efc0
[subset] bug fix in post table
...
insert retain-gid holes when retain-gids is enabled
6 months ago
Qunxin Liu
72502ef02b
[instancer] dont return false when variation data is empty after partial instancing
6 months ago
Behdad Esfahbod
59a97ac02e
[test] More get_table_tags test
6 months ago
Behdad Esfahbod
a55b007144
[test] Add get_table_tags test for hb-coretext
6 months ago
Behdad Esfahbod
bd79bfb653
[test] Add get_table_tags test for hb-ft
6 months ago
Behdad Esfahbod
a459753ef9
[test] Test get_table_tags of face_builder
6 months ago
Behdad Esfahbod
8896b1d57a
[test] Add test for get_table_tags
...
So far just tests the default implementation.
6 months ago
Behdad Esfahbod
84f165646e
[test] Move code around
6 months ago
Behdad Esfahbod
22e1a5a785
[test-paint] Fix warnings
6 months ago
Behdad Esfahbod
191c6eedf3
Fix Linux bot
6 months ago
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
6 months ago
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
7 months ago
Khaled Hosny
a38f853e83
Drop unused Makefile.sources files
8 months ago
Khaled Hosny
cf1fdf1632
Drop autotools build
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/4720
8 months ago
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
8 months ago
ssmid
106e4068b9
HB_SCRIPT_CANADIAN_ABORIGINAL removed, as deprecated
8 months ago
ssmid
8de7e9fdb1
deprecation cleanup: HB_BUFFER_FLAGS_DEFAULT removed
8 months ago
Behdad Esfahbod
1e2bd4983e
Another include fix
...
https://github.com/harfbuzz/harfbuzz/issues/4740#issuecomment-2148910890
9 months ago
Behdad Esfahbod
e9870e8d54
Add missing include
...
https://github.com/harfbuzz/harfbuzz/issues/4740#issuecomment-2148727072
9 months ago
Behdad Esfahbod
9456f6bdfa
[test] Fix a few compiler warnings
9 months ago
David Corbett
c2b5b7b9ca
[ot-tags] Update IANA and OT language registries
9 months ago
Khaled Hosny
135d6537d9
test-draw-varc.c: Fix “warning: unused function”
9 months ago
Garret Rieger
0660a4d408
[subset] fix fuzzer found heap use after free in BASE subsetting.
9 months ago
David Corbett
0db136b1b0
[subset-cff] Shorten output of `encode_num_tp`
9 months ago
Qunxin Liu
7975c9cabd
[instancer] bug fix for COLRv1, add missing mapping to VarIdx::NO_VARIATION
9 months ago
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.
9 months ago
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
9 months ago
Qunxin Liu
3b3c154bd1
add back missing tests that were disabled when wrapped by experimental
9 months ago
Qunxin Liu
6c8985724e
fix bots
9 months ago
Qunxin Liu
f614a7d309
[instancer] add/update tests for COLRv1 instancing
9 months ago
Qunxin Liu
ebcdadbf54
[instancer] add tests for instantiating BASE table
10 months ago