|
fe6c9a0f
|
2025-09-11T23:23:41
|
|
[instancer/varstore] Fix a logic bug
combined_chars was moved already.
Also, see comment.
|
|
9d971169
|
2025-09-11T23:10:50
|
|
[instancer/varstore] Add a chars_t type
|
|
1a6c6d78
|
2025-09-11T21:59:41
|
|
[instancer] Micro-optimize a couple of hot comparisons
|
|
c938e8ce
|
2025-09-11T21:57:14
|
|
[instancer] Micro-optimize by using bit-set directly
|
|
266e1c24
|
2025-09-11T20:12:39
|
|
[instancer] Short-circuit some work in gain_from_merging
|
|
a34f8b31
|
2025-09-11T19:10:05
|
|
[instancer] Use bitset instead of vector for VarStore optimizer columns
~30% faster on GoogleSansFlex.
|
|
2e86070e
|
2025-09-11T18:15:19
|
|
[instancer] Don't clear a couple of resize allocations
Not needed.
|
|
01fd17d6
|
2025-09-11T17:05:03
|
|
[instancer] Reduce mallocs in create_from_tuple_var_data
|
|
23e40cd7
|
2025-09-11T16:53:44
|
|
[instancer] Reduce mallocs in gain_from_merging
|
|
3225bd73
|
2025-09-11T16:44:24
|
|
[instancer] Minor default construction simplify
|
|
3df6e510
|
2025-09-11T16:33:10
|
|
[instancer] Reduce mallocs in merge_tuple_variations
|
|
6d82b40a
|
2025-09-11T16:09:13
|
|
[instancer] Remove unnecessary vector fini
|
|
87c36992
|
2025-09-11T15:42:59
|
|
[instancer] Reduce mallocs in calc_inferred_deltas
|
|
740cbf1c
|
2025-09-11T15:30:30
|
|
[vector] Add malloc debug facility
|
|
67bddf15
|
2025-09-11T15:16:30
|
|
[instancer] Reduce mallocs in change_tuple_var_axis_limit
|
|
17aa37ab
|
2025-09-11T15:13:51
|
|
[instancer] Reduce mallocs in rebase-tent
|
|
0fbbf749
|
2025-09-10T21:11:44
|
|
[ot-tags] Update IANA subtags to 2025-08-25 (#5537)
|
|
13c8ffa0
|
2025-09-10T11:35:54
|
|
[Unicode 17] Send the new scripts to USE
|
|
f59d532b
|
2025-09-10T11:34:07
|
|
[Unicode 17] Update the USE table
|
|
5b6409f0
|
2025-09-10T11:22:02
|
|
[Unicode 17] Update the vowel constraint table
|
|
7c611a2b
|
2025-09-10T11:21:36
|
|
[Unicode 17] Update the Indic table
|
|
e189b34e
|
2025-09-10T11:19:14
|
|
[Unicode 17] Update the emoji table & cluster test
|
|
e0e0a757
|
2025-09-10T11:18:07
|
|
[Unicode 17] Update the Arabic joining script list
|
|
5b72f304
|
2025-09-10T11:17:25
|
|
[Unicode 17] Update the Arabic table
|
|
147db69b
|
2025-09-10T11:15:30
|
|
[Unicode 17] Update the UCD table
|
|
d08a72dd
|
2025-09-10T11:12:37
|
|
[Unicode 17] Add new `hb_script_t` values
|
|
dd291f48
|
2025-09-07T23:46:27
|
|
Short-circuit ASCII more (#5528)
|
|
d94851e5
|
2025-09-03T11:52:51
|
|
[rust] Use inherited codegen-units=1 in debugoptimized build
It makes significant (30% in Nastaliq benchmark) difference.
|
|
cb4548d3
|
2025-09-02T14:58:00
|
|
[subset] always generate AdvMap (#5524)
|
|
77d07304
|
2025-09-02T14:40:51
|
|
[subset] fix HVAR encoding width (#5523)
|
|
12ec6682
|
2025-09-02T14:21:57
|
|
[buffer] Micro-optimize set_masks
Somehow this specialization loop was in HarfRust / RustyBuzz.
|
|
598da8c8
|
2025-09-02T14:21:08
|
|
[buffer] Add some buffer op accounting to a few methods (#5522)
Should fix a fuzzer-found issue, now that we have increased
most buffer limits.
|
|
a89c36e0
|
2025-09-02T13:05:11
|
|
[GPOS/kerx] Support attaching marks to bases after them (#5520)
See comments. Fuzzer found. I'm surprised this was not discovered
before though. I hope I have not missed anything.
Fixes https://oss-fuzz.com/testcase-detail/6399443634290688
|
|
22f77d48
|
2025-08-30T11:39:01
|
|
11.4.5
|
|
6d1c70bf
|
2025-08-29T17:09:00
|
|
Remove unused code
|
|
01072c5c
|
2025-08-29T13:19:59
|
|
[harfrust] Require 0.2.0
|
|
c61a4f26
|
2025-08-29T02:11:52
|
|
[GPOS] Micro-optimize offset propagation
|
|
cb8b47eb
|
2025-08-29T00:08:28
|
|
[kern] Use reset_fast
|
|
772279df
|
2025-08-28T15:58:39
|
|
[utf] inline some
|
|
c6e3f5a8
|
2025-08-27T16:41:25
|
|
[aat] Reverse buffer only when necessary (#5516)
|
|
141df8b9
|
2025-08-27T16:09:35
|
|
[buffer] Adjust inlining
|
|
ff8d8e44
|
2025-08-27T15:36:48
|
|
Fixup
|
|
1091b8a9
|
2025-08-27T15:35:26
|
|
[shape-fallback] Adjust inlining
|
|
bc6eba94
|
2025-08-27T13:29:15
|
|
Fix kerx attachment shaping issues (#5515)
* [ot-shape] Don't zero offsets of default-ignorables
Part of fixing https://github.com/harfbuzz/harfbuzz/issues/5514
* [ot-shape] Propagate chain offsets in opposite direction if RTL
Part of fixing https://github.com/harfbuzz/harfbuzz/issues/5514
|
|
7d936359
|
2025-08-26T01:46:34
|
|
[aat] Clear cached buffer glyph set (#5508)
Ouch.
|
|
12b0f086
|
2025-08-26T01:29:50
|
|
[morx] Move a few initializations later (#5507)
|
|
8e2e18fe
|
2025-08-25T23:55:30
|
|
[aat] Rename a few members (#5506)
|
|
653b7722
|
2025-08-25T20:15:43
|
|
[kern] Simplify Format3 collect_glyphs() (#5505)
No idea why I wrote it that way initially.
|
|
1e5b65b7
|
2025-08-25T19:55:13
|
|
[aat] Remove unused code (#5504)
|
|
8f4778d2
|
2025-08-25T19:49:48
|
|
[aat] Implement collect_glyphs_filtered for LookupFormat10 (#5503)
Oops.
|
|
3420ef02
|
2025-08-26T00:57:35
|
|
11.4.4
|
|
b7c55efe
|
2025-08-26T00:28:12
|
|
[subset] Fix shaping behaviour when pruning empty mark sets
See https://github.com/harfbuzz/harfbuzz/issues/5499
|
|
6b62d367
|
2025-08-25T14:02:59
|
|
[ligature-cache] Handle case of ligature with no components (#5500)
In the cache with "seconds" set-digest.
|
|
724ae78d
|
2025-08-25T13:14:43
|
|
Revert "[check-glyph-properties] Cache current lookup-prop's matching result." (#5497)
This reverts commit 5b6836e10802266b4c216208e517d617c0a75693.
This broke some shaping, namely, "j̣̈́J̣J̈́" with Google Sans, and is quite
tricky to debug. Since this slowed down everything other than Duployan,
and we also decided NOT to port it to HarfRust, just revert and keep the
simpler and more reasonable code logic.
|
|
567dde62
|
2025-08-25T17:50:54
|
|
[coretext] fix unsigned integer comparison (#5496)
Comparing a CFIndex with an unsigned int results in a compilation error on iOS armv7 targets:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch armv7 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS15.4.sdk -Isrc/libharfbuzz.a.p -Isrc -I../src -I. -I.. -I/Volumes/External/videolanci/builds/vCi6yJP3/0/robUx4/vlc/contrib/armv7-iphoneos/include/freetype2 -I/Volumes/External/videolanci/builds/vCi6yJP3/0/robUx4/vlc/contrib/armv7-iphoneos/include -fdiagnostics-color=always -Wall -Winvalid-pch -std=c++11 -fno-exceptions -O2 -g -fno-exceptions -fno-rtti -fno-threadsafe-statics -fvisibility-inlines-hidden -DHAVE_CONFIG_H -mios-version-min=9.0 -arch armv7 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS15.4.sdk -Werror=partial-availability -fno-stack-check -g -O2 -MD -MQ src/libharfbuzz.a.p/hb-coretext-font.cc.o -MF src/libharfbuzz.a.p/hb-coretext-font.cc.o.d -o src/libharfbuzz.a.p/hb-coretext-font.cc.o -c ../src/hb-coretext-font.cc
../src/hb-coretext-font.cc:413:11: error: comparison of integers of different signs: 'CFIndex' (aka 'long') and 'unsigned int' [-Werror,-Wsign-compare]
if (len > size - 1)
~~~ ^ ~~~~~~~~
1 error generated.
|
|
029eb215
|
2025-08-23T18:43:50
|
|
[harfrust] Encode pre-context in the correct order (#5495)
https://github.com/harfbuzz/harfrust/issues/205
|
|
9ac9af25
|
2025-08-23T11:48:18
|
|
11.4.3
|
|
04953dca
|
2025-08-21T23:00:37
|
|
[vector] Enable set_storage only on trivial types (#5493)
|
|
7ba05752
|
2025-08-21T19:38:10
|
|
[harfrust] Fix compile with clang
|
|
5fddacc1
|
2025-08-21T12:54:49
|
|
[harfrust] Set buffer pre/post-context (#5492)
* [harfrust] Set buffer pre/post-context
Fixes the failing item-context tests. Yay.
* Bump MSRV
|
|
e80b6d11
|
2025-08-21T19:24:35
|
|
[ot-math] Fix constant scaling when checking if the font is Cambria Math (#5490)
Co-authored-by: Khaled Hosny <khaled@aliftype.com>
|
|
c1a75d36
|
2025-08-21T17:38:04
|
|
Avoid UB if shrink_vector(0) is called on an already-empty vector (#5491)
Fixes #5489
|
|
6c42e2d7
|
2025-08-21T00:04:56
|
|
[buffer] Consume ops in shift_forward (#5488)
Makes failing infinite-recursion fonts and stuff much faster.
|
|
6b754c33
|
2025-08-21T08:40:14
|
|
11.4.2
|
|
b51de936
|
2025-08-20T23:15:46
|
|
Remove duplicate buffer->leave call (#5487)
* Remove duplicate buffer->leave call
hb-shape.cc does it for us.
* Fail shaping if max len reached
* Increase buffer limits
https://github.com/harfbuzz/harfrust/issues/107
* Remove shaping_failed; fail in buffer.successful
|
|
b790eb9e
|
2025-08-20T19:11:54
|
|
[gen-use-table] Generate --rust output
Used for HarfRust.
|
|
14227e16
|
2025-08-20T19:07:51
|
|
Update use (#5486)
* [use-table] Regenerate with latest packtab
* [gen-use-table] Remove unused code
Copied from gen-indic-table.
|
|
00492ec7
|
2025-08-20T13:48:11
|
|
[harfrust] Pin to 0.1.2 for relase
|
|
c32ea553
|
2025-08-20T13:15:58
|
|
[avar] Fix version2 handling (#5485)
|
|
724249ff
|
2025-08-20T00:54:05
|
|
Simplify a return after recent changes (#5484)
|
|
8bdedb3b
|
2025-08-20T00:27:41
|
|
Limit external caches (#5483)
* Revert "[external_cache] Remove a conditional (#5471)"
This reverts commit 9794ad9e00ff66741c36ec9511e3e968663b74a7.
* Limit external_cache to 8 subtables per lookup
|
|
22545743
|
2025-08-20T00:06:00
|
|
Match positions no malloc (#5481)
* Reduce allocation of match_positions by caching one in ctx
* Use a stack-array for small match-positions
This surgically enables stack-backed storage in vector.
* Handle match-positions alloc failure
And make allocations unchecked.
* Clean up CFF hack to use static storage in vector
* Fixup for match_positions allocations
* Fix vector handling of foreign arrays memory management
|
|
6a449756
|
2025-08-18T18:52:02
|
|
[aat] Comment
|
|
04f1a435
|
2025-08-18T16:57:46
|
|
Add a typedef
|
|
c6153c73
|
2025-08-16T16:52:02
|
|
[buffer] Micro-optimize next_glyph() (#5472)
|
|
9794ad9e
|
2025-08-16T15:51:05
|
|
[external_cache] Remove a conditional (#5471)
|
|
96f3cae5
|
2025-08-16T15:02:37
|
|
Revert "[set-digest] Branch-free tests (#5469)" (#5470)
This reverts commit a4d4c41023dd738d35f2e917d8deea2b473a38aa.
That commit had slowed down clang by 3% while sped up gcc by 3%.
Revert, to keep the code *intention* clear. Rely on compiler
to avoid branches if it sees fit.
|
|
a4d4c410
|
2025-08-16T13:55:46
|
|
[set-digest] Branch-free tests (#5469)
|
|
368598b5
|
2025-08-16T00:38:42
|
|
Increase match_positions stack allocation from 4 to 8 (#5468)
Slight speedup on NotoNastaliq.
|
|
0e6e18e7
|
2025-08-15T14:27:33
|
|
Rename a method
|
|
0a257b01
|
2025-08-15T00:54:52
|
|
[gen-ucd-table] Rust clippy
|
|
03d516f8
|
2025-08-15T00:52:44
|
|
[ucd] Change compression level from 5 to 3 (#5466)
3kb bigger binary size. 1% faster in Roboto.
|
|
dae2c8bb
|
2025-08-14T22:26:40
|
|
[ligature] Add a set-digest on the second component (#5464)
|
|
8268473a
|
2025-08-14T21:57:19
|
|
Add external_cache_create separate from cache_func (#5463)
* Add external_cache_create separate from cache_func
* Simplify cache_func_t signature
* Rename a cache type
* Rename another cache type
|
|
cf614fc8
|
2025-08-14T16:23:45
|
|
[LigatureSet] Use slow path only if <= 1 ligatures (#5462)
|
|
bbc2e0d0
|
2025-08-14T16:12:59
|
|
[harfrust] Scale using int64 instead of float (#5461)
Like hb-font.hh does.
|
|
354c6a17
|
2025-08-14T16:01:44
|
|
[harfrust] Remove one function call (#5460)
lol. That's how desperate we are now.
|
|
75044854
|
2025-08-14T11:24:19
|
|
[harfrust] Update to latest API
|
|
53cd214e
|
2025-08-14T10:24:21
|
|
[harfrust] Use buffer.ensure() (#5459)
|
|
a9a78e1b
|
2025-08-14T02:04:06
|
|
[main-loop] Hypothetically remove a branch (#5458)
Don't rely on the compiler.
|
|
7d1ef008
|
2025-08-14T01:03:18
|
|
Remove an unneeded parameter (#5457)
|
|
f9e6c84d
|
2025-08-13T18:18:57
|
|
[gen-ucd-table] Add another clippy warning
|
|
8ebdb9f7
|
2025-08-13T17:39:30
|
|
[harfrust] Cache Shaper object (#5454)
|
|
6b285e6e
|
2025-08-13T11:59:30
|
|
11.4.1
|
|
71a7c58c
|
2025-08-13T11:57:36
|
|
Fix build on some compilers
|
|
8c859f25
|
2025-08-13T11:47:38
|
|
11.4.0
|
|
fbc21a95
|
2025-08-12T10:59:11
|
|
[gsubgpos] Remove copy/pasta code
|
|
4aa7dcba
|
2025-08-12T03:18:38
|
|
[Coverage cache] Micro-optimize
|
|
a4dbb7d4
|
2025-08-12T02:34:49
|
|
[Coverage] Cache NOT_COVERED effectively (#5453)
Before, our cache.set was always failing for NOT_COVERED,
making the cache ineffective for uncovered glyphs. Fix that.
Some nice speedups in Latin fonts.
|
|
1e8a554e
|
2025-08-11T19:27:32
|
|
Hr buffer cache (#5452)
* [harfrust] Rename a variable
* [harfrust] Cache HR buffer on HB buffer
|