Commit graph

18249 commits

Author SHA1 Message Date
Behdad Esfahbod
62c320a2d6
Merge pull request #5126 from harfbuzz/aat-deleted-glyph-more
[aat/morx] Use a separate bit for deleted-glyphs
2025-03-09 21:02:48 -06:00
Behdad Esfahbod
0b62666ece [aat/morx] Use a separate bit for deleted-glyphs
Should address:
https://github.com/harfbuzz/harfbuzz/pull/5119#issuecomment-2709170388
2025-03-09 19:38:32 -06:00
Behdad Esfahbod
bcbd1df3dd
Merge pull request #5125 from harfbuzz/fontations-serial
[fontations] Check for font serial change automatically
2025-03-09 19:03:05 -06:00
Behdad Esfahbod
e77fb46335 [fontations] Do double-checked locking
See if tsan likes this. It liked the previous version.
2025-03-09 18:53:36 -06:00
Behdad Esfahbod
780809fb0c [fontations] Check for font serial change automatically
Let's see what tsan thinks... I also have not profiled this.

It also doesn't hold the mutex for the whole use time. It
probably should or bad things might happen.
2025-03-09 18:43:47 -06:00
Behdad Esfahbod
9f8e7ebf24
Merge pull request #5119 from harfbuzz/aat-deleted-glyph
[AAT] Clean up deleted-glyph handling
2025-03-09 18:09:58 -06:00
Behdad Esfahbod
ff76244ea6 [aat/morx] Delete deleted glyphs again
But also check for default-ignorable bit this time.
2025-03-09 17:24:40 -06:00
Behdad Esfahbod
dc048b7c88 [aat/morx] Set glyph props consistently 2025-03-09 16:53:24 -06:00
Behdad Esfahbod
4ec560dd02 [aat/morx] Refactor all glyph replacements into the context 2025-03-09 16:53:24 -06:00
Behdad Esfahbod
c6972ac6dd [aat] Towards removing special deleting of 0xFFFF
See https://github.com/harfbuzz/harfbuzz/discussions/5118

Remove the removal. Depend on the default_ignorable flag
to hide them later.

Test output adjusted.
2025-03-09 16:53:24 -06:00
Behdad Esfahbod
ec4d4b01e8 [morx] Update buffer on changes, in one more place
Was missed out before I believe.
2025-03-09 16:53:24 -06:00
Behdad Esfahbod
c88e819965 Fix compiler warning 2025-03-09 16:53:03 -06:00
Behdad Esfahbod
d067f2b224 [font] get_acquire() the serial 2025-03-09 06:17:48 -06:00
Behdad Esfahbod
0a01fc558b
Merge pull request #5122 from harfbuzz/using
Add API for querying font-funcs / face-loaders and setting them using strings
2025-03-09 05:28:09 -06:00
Behdad Esfahbod
ec6f99c5ea [fontations] Give clippy test more time 2025-03-09 05:18:13 -06:00
Behdad Esfahbod
9e639e676a [face] Review 2025-03-09 05:10:50 -06:00
Behdad Esfahbod
1e812e43b3 [ft] Another try at making tsan happy maybe 2025-03-09 03:39:52 -06:00
Behdad Esfahbod
7791f50e3a [ft] Use a lock-guard 2025-03-09 03:34:28 -06:00
Behdad Esfahbod
aa268fc8ef [font/ft] See if tsan is happy with atomic_int_t serials 2025-03-09 03:31:01 -06:00
Behdad Esfahbod
6ae7ef0659 [ft] See if I can make tsan happy 2025-03-09 03:19:22 -06:00
Behdad Esfahbod
a83faa061c [ft] Automatically pick up font serial changes
Part of https://github.com/harfbuzz/harfbuzz/issues/5124
2025-03-09 03:07:45 -06:00
Behdad Esfahbod
402f89cb79 [face] Rename a variable 2025-03-09 01:52:28 -07:00
Behdad Esfahbod
5cf1fa3add [face] Fix docs 2025-03-09 01:47:23 -07:00
Behdad Esfahbod
2ecc68c12f [face] Fix HB_LEAN build 2025-03-09 01:46:07 -07:00
Behdad Esfahbod
6b9d9f7259 [face] Add HB_FACE_LOADER env var 2025-03-09 01:41:49 -07:00
Behdad Esfahbod
9d05b03f83 [font] Add HB_FONT_FUNCS work into hb_font_set_funcs_using() 2025-03-09 01:34:37 -07:00
Behdad Esfahbod
39ade99d47 [face] Two new APIs:
+ hb_face_create_from_file_or_fail_using()
+ hb_face_list_loaders()
2025-03-09 01:25:52 -07:00
Matthias Clasen
79c991e143 Improve docs for feature and variation serialization
Clarify that the serialized forms of features and variations
won't have any whitespace in them. This can help for parsing
when embedding these strings into larger serializations.
2025-03-08 18:00:43 -07:00
Behdad Esfahbod
50ea460b93 Review 2025-03-08 16:07:44 -07:00
Behdad Esfahbod
43ff0f73cc [fontations] Relax dependency numbers 2025-03-08 13:30:10 -07:00
Behdad Esfahbod
437ce95059 [util] Add --list-font-funcs 2025-03-08 13:12:15 -07:00
Behdad Esfahbod
68b07475a7 [font-funcs] Support HB_FONT_FUNCS env var 2025-03-08 12:41:50 -07:00
Behdad Esfahbod
5a12bf417b [font-funcs-using] Treat empty string like nullptr 2025-03-08 12:31:07 -07:00
Behdad Esfahbod
712a403bec [font-funcs-using] Apply review feedback 2025-03-08 12:23:41 -07:00
Behdad Esfahbod
fae9d2ab27 [fontations] Add dependencies 2025-03-08 12:15:25 -07:00
Behdad Esfahbod
e8ddb4325b [fontations] Consolidate args a bit 2025-03-08 12:13:31 -07:00
Behdad Esfahbod
c3eac5c0f3 [test-threads] Test all font-funcs
Fontations & Coretext are new and seems to pass.
2025-03-08 11:57:31 -07:00
Behdad Esfahbod
2a878b1b76 [font-funcs] Add two new API
+ hb_font_set_funcs_using()
+ hb_font_list_funcs()

Part of https://github.com/harfbuzz/harfbuzz/issues/5117
2025-03-08 11:50:53 -07:00
Khaled Hosny
e9348cd76d [ci] Port minsize job from Alpine to Ubuntu
Alpine is frequently failing with compiler crashing, but we don’t really
need Alpine. No other job building with --buildtype=minsize, so keep it
but use Ubuntu.
2025-03-08 12:43:49 +02:00
Behdad Esfahbod
27fa1c4229
Merge pull request #5120 from harfbuzz/fontations-shrink
Fontations shrink
2025-03-07 22:01:23 -07:00
Behdad Esfahbod
080bd09db3 [fontations/ci] Fix 2025-03-07 21:48:17 -07:00
Behdad Esfahbod
3f6da0a367 [fontations] Run rustfmt & clippy as tests 2025-03-07 21:43:34 -07:00
Behdad Esfahbod
4bb7f61050 [fontations] Minor remove a type 2025-03-07 21:33:53 -07:00
Behdad Esfahbod
aabf8aadf8 [fontations] Use proper meson function for running commands 2025-03-07 21:32:05 -07:00
Behdad Esfahbod
52852c6cb6 [check-symbols] Ignore another rust symbol 2025-03-07 21:28:25 -07:00
Behdad Esfahbod
77314a3be7 [check-symbols] Don't run c++filt
For adding to ignore list, we want to see the original symbol
name. One can always c++filt themselves.
2025-03-07 21:19:09 -07:00
Behdad Esfahbod
5c01d8298c [fontations/ci] Try to fix 2025-03-07 21:15:08 -07:00
Behdad Esfahbod
bd66336d45 [fontations] Add clippy-check target 2025-03-07 21:13:28 -07:00
Behdad Esfahbod
8fd718c9eb [fontations] Add fmt-check target 2025-03-07 21:09:17 -07:00
Behdad Esfahbod
a68f458612 [fontations] Make 'ninja -Cbuild clippy' apply fixes 2025-03-07 21:05:59 -07:00