|
7f5fac7c
|
2025-02-04T23:35:34
|
|
[test-buffer] Fix unintionally merged change
|
|
f0ead852
|
2025-02-04T23:27:03
|
|
[aat] Implement set filtering for Noncontextual chains as well
|
|
4825e5e2
|
2025-02-04T00:54:58
|
|
[face] Add fallback implementation to hb_face_reference_blob
If referencing the face blob is not possible (e.g. not implemented by
the font functions), use face builder to create a blob out of
individual table blobs.
Fixes https://github.com/harfbuzz/harfbuzz/issues/5036
|
|
b394ab39
|
2025-01-31T10:21:31
|
|
[test-buffer] Add code for testing end_ptr
|
|
9ef009f5
|
2025-01-24T16:37:12
|
|
[test] Fix test
Broken by previous commit.
https://github.com/harfbuzz/harfbuzz/issues/5020#issuecomment-2613597379
|
|
bdb50f1c
|
2025-01-07T20:32:05
|
|
[repacker] Also rename api method from hb_subset_repack_or_fail -> hb_subset_serialize_or_fail.
|
|
05650416
|
2025-01-07T19:56:25
|
|
[repacker] rename hb-subset-repacker -> hb-subset-serialize.
Also hb_link_t and hb_object_t to hb_subset_serialize_link_t and hb_subset_serialize_object_t.
|
|
5a6f5922
|
2025-01-06T21:16:24
|
|
[repacker] Promote repacking API to stable.
For #227.
|
|
57569baa
|
2025-01-02T21:14:25
|
|
Don’t insert U+25CC before super/subscript digits
|
|
edb3b208
|
2024-12-15T12:01:33
|
|
Make hb_test_tools.py work in Python 3.13
|
|
f887096a
|
2024-12-15T10:53:09
|
|
[myanmar] Allow all tones (& visarga) in any order
|
|
773fe850
|
2024-11-20T17:20:49
|
|
[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
|
|
b0d52abe
|
2024-10-23T20:49:44
|
|
[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
|
|
622e9c33
|
2024-11-06T10:59:17
|
|
[instancer] fix for incorrect offset calculation when we have gvar padding
|
|
2dc63341
|
2024-10-13T20:03:16
|
|
[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.
|
|
755929c4
|
2024-10-12T20:08:32
|
|
Fix more compiler warnings
In case FreeType is not available.
|
|
4d1f6e04
|
2024-10-06T18:25:24
|
|
[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.
|
|
e1572054
|
2024-10-06T18:51:33
|
|
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.
|
|
8de0d911
|
2024-10-06T18:44:21
|
|
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.
|
|
b6196986
|
2024-10-03T15:56:04
|
|
[USE] Update the data files
This uses the data files from
<https://github.com/microsoft/font-tools/tree/e00698c07a0444647db84a7f8bf03d1081bd53b3/USE>.
|
|
867366cc
|
2024-09-24T09:17:12
|
|
[test] Add GeezaPro tests for MacOS 15.0
|
|
7aace3d3
|
2024-09-23T07:47:24
|
|
Ignore CGJ and Mongolian Variation Selectors during GPOS
Fixes https://github.com/harfbuzz/harfbuzz/issues/4869
|
|
5e5cd10e
|
2024-09-22T12:36:51
|
|
Don't make variation-selectors default-ignorable if not-found set
https://github.com/harfbuzz/harfbuzz/pull/4863#issuecomment-2366908261
|
|
b94a39d7
|
2024-09-22T08:23:34
|
|
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.
|
|
287046f7
|
2023-12-15T10:24:03
|
|
[buffer] Hook up not-found-variation-selector-glyph
Fixes https://github.com/harfbuzz/harfbuzz/issues/4398
|
|
6fd76e1f
|
2024-09-17T13:50:10
|
|
[subset] offset format fix in gvar table
|
|
e30dedbb
|
2024-09-14T12:06:08
|
|
[Unicode 16] Add tests
|
|
554658e3
|
2024-09-14T11:08:37
|
|
[Unicode 16] Update the emoji table & cluster test
|
|
98353ece
|
2024-09-11T11:35:15
|
|
[test] Run shape tests with C locale as well
https://github.com/harfbuzz/harfbuzz/pull/4857
|
|
70334d74
|
2024-09-11T14:30:32
|
|
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
|
|
634778ef
|
2024-08-20T14:34:09
|
|
[subset] bug fix in post table
insert retain-gid holes when retain-gids is enabled
|
|
72502ef0
|
2024-08-12T14:08:06
|
|
[instancer] dont return false when variation data is empty after partial instancing
|
|
59a97ac0
|
2024-08-06T14:53:36
|
|
[test] More get_table_tags test
|
|
a55b0071
|
2024-08-06T14:39:10
|
|
[test] Add get_table_tags test for hb-coretext
|
|
bd79bfb6
|
2024-08-06T13:40:06
|
|
[test] Add get_table_tags test for hb-ft
|
|
a459753e
|
2024-08-06T13:31:24
|
|
[test] Test get_table_tags of face_builder
|
|
8896b1d5
|
2024-08-06T12:34:15
|
|
[test] Add test for get_table_tags
So far just tests the default implementation.
|
|
84f16564
|
2024-08-06T12:15:39
|
|
[test] Move code around
|
|
22e1a5a7
|
2024-08-06T12:20:34
|
|
[test-paint] Fix warnings
|
|
191c6eed
|
2024-08-06T06:59:32
|
|
Fix Linux bot
|
|
e0c3cbf1
|
2024-08-06T06:46:44
|
|
[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
|
|
788b469a
|
2024-07-25T14:50:01
|
|
[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
|
|
a38f853e
|
2024-06-27T15:35:01
|
|
Drop unused Makefile.sources files
|
|
cf1fdf16
|
2024-06-27T06:54:02
|
|
Drop autotools build
Fixes https://github.com/harfbuzz/harfbuzz/issues/4720
|
|
49c8493f
|
2024-06-20T11:16:40
|
|
[test] Build with HB_MINI
Also add CONFIG.md instructions for building configs with meson.
Fixes https://github.com/harfbuzz/harfbuzz/issues/4760
|
|
106e4068
|
2024-06-20T09:50:46
|
|
HB_SCRIPT_CANADIAN_ABORIGINAL removed, as deprecated
|
|
8de7e9fd
|
2024-06-20T08:54:23
|
|
deprecation cleanup: HB_BUFFER_FLAGS_DEFAULT removed
|
|
1e2bd498
|
2024-06-04T23:53:36
|
|
Another include fix
https://github.com/harfbuzz/harfbuzz/issues/4740#issuecomment-2148910890
|
|
e9870e8d
|
2024-06-04T20:50:06
|
|
Add missing include
https://github.com/harfbuzz/harfbuzz/issues/4740#issuecomment-2148727072
|
|
9456f6bd
|
2024-06-02T10:32:07
|
|
[test] Fix a few compiler warnings
|
|
c2b5b7b9
|
2024-06-01T12:48:17
|
|
[ot-tags] Update IANA and OT language registries
|
|
135d6537
|
2024-05-31T01:25:05
|
|
test-draw-varc.c: Fix “warning: unused function”
|
|
0037ee28
|
2024-05-24T08:10:15
|
|
Merge pull request #4578 from harfbuzz/varc-table
`VARC` table
|
|
0660a4d4
|
2024-05-13T19:28:57
|
|
[subset] fix fuzzer found heap use after free in BASE subsetting.
|
|
0db136b1
|
2024-05-09T11:49:48
|
|
[subset-cff] Shorten output of `encode_num_tp`
|
|
7975c9ca
|
2024-05-08T10:11:03
|
|
[instancer] bug fix for COLRv1, add missing mapping to VarIdx::NO_VARIATION
|
|
b74a7ecc
|
2024-05-07T19:53:01
|
|
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.
|
|
a5c9c826
|
2024-05-06T13:22:49
|
|
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
|
|
3b3c154b
|
2024-05-06T12:56:23
|
|
add back missing tests that were disabled when wrapped by experimental
|
|
6c898572
|
2024-05-02T10:11:06
|
|
fix bots
|
|
f614a7d3
|
2024-05-02T10:05:18
|
|
[instancer] add/update tests for COLRv1 instancing
|
|
ebcdadbf
|
2024-05-03T14:24:56
|
|
[instancer] add tests for instantiating BASE table
|
|
4d2380f5
|
2024-05-03T14:05:56
|
|
Merge pull request #4693 from harfbuzz/promote-vf-api
[instancer] Promote partial instancing API out of experimental.
|
|
f145ab2f
|
2024-05-03T18:24:33
|
|
Disable empty_region_vardata test when running on 32bit machines.
|
|
ba1f194a
|
2024-05-02T12:18:11
|
|
[gsubgpos] Reduce stack use in recursion
|
|
4cf606f6
|
2024-05-02T20:46:29
|
|
[instancer] Promote partial instancing api out of experimental.
|
|
6129c726
|
2024-04-22T14:52:58
|
|
[varc] Use Condition instead of ConditionSet
With more Condition formats.
https://github.com/harfbuzz/boring-expansion-spec/commit/df7dcc4618b9dc003740d25c53afe30a8fc03fe2
https://github.com/harfbuzz/boring-expansion-spec/issues/147
|
|
d07d70ae
|
2024-03-22T11:43:37
|
|
[varc] Add test
|
|
1121d80b
|
2024-03-22T10:45:36
|
|
[varc] Add a conditional test font
|
|
7c874354
|
2024-03-20T15:34:24
|
|
[varc] Implement conditionSets
|
|
3ffd92f0
|
2024-03-17T12:38:30
|
|
[varc] Add a couple of seeds for the fuzzer
|
|
2cfa5505
|
2024-03-27T23:21:57
|
|
[instancer] Switch to doubles for delta calculations.
FontTools uses double's internally so match FontTool's precision so we get the same results more often for floating point calculations.
|
|
c84acc8e
|
2024-04-08T23:46:14
|
|
[subset] Fix fuzzer found memory leak.
Fixes https://oss-fuzz.com/testcase-detail/6159925345583104.
|
|
6e874817
|
2024-03-27T17:47:57
|
|
[subset] add virtual links to keep the gdef varstore last.
|
|
71456071
|
2024-03-25T21:41:16
|
|
[subset] place the gdef var store at the end of the GDEF table.
It appears that some font processors assume it is the last sub table.
|
|
990fb14d
|
2024-03-28T22:32:55
|
|
[subset] Disable fonttools comparison in a few tests where rounding diffs show up.
Context: https://github.com/harfbuzz/harfbuzz/issues/4642
|
|
11f5dec7
|
2024-03-27T19:34:51
|
|
[subset] Move post apply mvar test intance position to avoid rounding diff.
|
|
975bd39b
|
2024-03-27T19:28:53
|
|
[subset] Match hb rounding to fonttools for avg char width.
Update Muli and Roboto input test fonts to recalc class values. FontTools recalcs class values during instancing while harfbuzz does not (like the ft subsetter).
|
|
15a05b24
|
2024-03-27T18:26:09
|
|
[subset] Update generate-expected-outputs to drop BASE.
This matches the behaviour of the test runner.
|
|
ec46c4c2
|
2024-03-27T18:11:26
|
|
[subset] Update subset test suite to match some changes made to fonttools.
FontTools has added pruning functionality for code pages which we don't yet have in harfbuzz. Update our test runner to disable that for now. Also match fonttools and always recalc usFirst/LastCharIndex even if no prune unicode ranges is set.
|
|
dbecddb4
|
2024-03-17T11:50:04
|
|
tests, hb-test.h: define g_assert_false && g_assert_nonnull for old glib
Reference issue: https://github.com/harfbuzz/harfbuzz/issues/4577
Reference issue: https://github.com/harfbuzz/harfbuzz/issues/4624
|
|
cfbb6a68
|
2024-03-14T17:33:34
|
|
[subset] support BASE table subsetting (#4618)
* [subset] support BASE table
* [subset] add tests for BASE table subsetting
|
|
2da79f70
|
2024-03-09T22:45:37
|
|
fix(test-ot-math.c): remove redundant lines
|
|
1ab8822b
|
2024-02-09T17:24:49
|
|
Fixed some errors in STAT table implementation
|
|
84771374
|
2024-01-26T15:45:32
|
|
[instancer] add tests for iup delta optimization
|
|
ef1f5c4e
|
2024-01-08T22:17:55
|
|
[subset] Re-use common Coverage subsetting function in PairPosFormat2.
Was using an identical but less efficient version. Fixes fuzzer test case: https://oss-fuzz.com/testcase-detail/6151390002806784
|
|
c17d6746
|
2024-01-07T22:10:10
|
|
[ot-math] Fix a bug in MathKern::get_value()
Fixes https://github.com/harfbuzz/harfbuzz/issues/4542
|
|
df735213
|
2023-12-06T09:50:29
|
|
[instancer-solver] port solver fix (#4519)
* [instancer-solver] port solver fix
from https://github.com/fonttools/fonttools/pull/3374
|
|
f1ac36ba
|
2023-11-15T11:38:41
|
|
[instancer] update hhea vertical metrics with OS/2 ones
|
|
2d001a0a
|
2023-11-08T11:11:51
|
|
[subset] OTS doesn't allow ligature attachment offset to be 0
|
|
9701b002
|
2023-11-06T22:14:31
|
|
[subset] Always place CFF1/2 char strings at the end of the packed table.
Makes the behaviour from HB_SUBSET_FLAGS_IFTB_REQUIREMENTS the default.
|
|
c6884377
|
2023-11-06T20:21:46
|
|
[subset] Add HB_SUBSET_FLAGS_IFTB_REQUIREMENTS flag.
When enabled the output subset conforms to the requirements for a base font to be patched by IFTB patches. IFTB is a proposed incremental font transfer patch. This new flag is set as experimental. Currently, setting this flag causes the output subset to also use long offsets for outline data in loca/glyf, gvar, CFF, and CFF2.
This change is a version of https://github.com/skef/harfbuzz/commit/3ae2fe2084d96f61d8ad1bbe42a6ef4e62ec830a rebased onto head w/ tests added.
|
|
d550e16a
|
2023-11-06T10:31:05
|
|
[instancer] Recalc avgcharwidth after instancing
|
|
6baf791e
|
2023-11-03T11:06:07
|
|
[instancer] add tests
|
|
31b5b2b1
|
2023-11-02T09:08:36
|
|
[instancer] add tests for valueformat
|
|
413af0a9
|
2023-11-02T11:14:48
|
|
[instancer] When partial instancing, subset LigCaretList after VarStore instantiation
|
|
f6f35f73
|
2023-10-27T09:31:07
|
|
[instancer] add tests for feature variations partial instancing
|
|
e595fe75
|
2023-10-18T16:00:06
|
|
fix bots
partial instancing tests are wrapped by experimenal_api, do not enable
them in Makefile
|
|
ce466989
|
2023-10-18T15:49:57
|
|
[subset] update tests
to reflect changes in GDEF.MarkGlyphSetsDef and Lookup.MarkFilteringSet
|
|
bde6fb83
|
2023-10-18T10:21:02
|
|
add missing file for test empty_region_vardata
|