|
5f5660fc
|
2023-05-05T15:52:17
|
|
[subset] In glyf-closure always add current glyph
Bad things can happen otherwise if one composite glyph depleted
the op count.
|
|
5468b08c
|
2023-05-05T15:49:38
|
|
[subset-plan] Move all object members to a new file
To automatically check for their errors.
|
|
71910fdf
|
2023-05-05T15:37:07
|
|
[Coverage] Remove unnecessary check
|
|
ee9b631d
|
2023-05-05T10:26:57
|
|
[SingleSubst] Fix condition to upgrade to beyond-64k
|
|
5d4f3ff6
|
2023-05-05T07:10:02
|
|
[TINY] Fix build
|
|
7e676cb4
|
2023-05-05T07:07:00
|
|
[config] Add HB_NO_OT_FONT_ADVANCE_CACHE
Part of https://github.com/harfbuzz/harfbuzz/issues/4220
|
|
8831ba7f
|
2023-05-05T07:03:25
|
|
[config] Add HB_NO_OT_FONT_CMAP_CACHE
Part of https://github.com/harfbuzz/harfbuzz/issues/4220
|
|
0e9ebf10
|
2023-05-05T06:57:51
|
|
[config] Add HB_OPTIMIZE_SIZE_MORE and enable in HB_TINY
Part of https://github.com/harfbuzz/harfbuzz/issues/4220
|
|
da175c69
|
2023-05-05T06:51:59
|
|
[config] Add HB_MINIMIZE_MEMORY_USAGE
Part of https://github.com/harfbuzz/harfbuzz/issues/4220
|
|
bbf4cfa3
|
2023-05-05T06:51:10
|
|
[config] Add missing HB_NO_BORING_EXPANSION options
Those others are only HB_EXPERIMENTAL_API anyway, but still.
|
|
31949636
|
2023-05-04T16:29:48
|
|
Revert "[layout] Cache subtable coverages in hb_map_t"
This reverts commit 7a715d74e06720c17d28ba7b4c3da0b583f8d1d3.
|
|
7a715d74
|
2023-05-04T16:28:11
|
|
[layout] Cache subtable coverages in hb_map_t
Proof-of-concept. Going to revert. Memory consumption is more
than I like. It does speed up Roboto shaping another 15% though.
Perhaps if we could add logic to choose which subtables to
cache, this might be a useful approach.
|
|
975980d3
|
2023-05-04T15:56:06
|
|
[gsubgpos] Add apply_cached() as separate method
In prep for some other work.
|
|
1be39729
|
2023-05-04T13:18:34
|
|
[subset] Support unordered glyphlist in Coverage/ClassDef serialize
|
|
a10fad7c
|
2023-05-04T11:32:07
|
|
[config] Add HB_NO_GDEF_CACHE
|
|
e138319f
|
2023-05-04T11:28:50
|
|
[config] Allow overriding HB_OPTIMIZE_SIZE
|
|
319a488b
|
2023-05-04T10:36:48
|
|
[GDEF] Fix null check
Fixes https://oss-fuzz.com/testcase-detail/5920994267889664
|
|
3f2401e2
|
2023-05-03T16:56:52
|
|
[layout] Don't init iters successively multiple times
|
|
959f1634
|
2023-05-03T16:27:41
|
|
[gsubgpos] Minor reduce variable scope
|
|
fb795dc3
|
2023-05-03T15:17:20
|
|
[GPOS] Optimize iterator reset
Speeds up Gulzar shaping 5%.
|
|
0c1637b6
|
2023-05-03T15:04:57
|
|
[aat] Fix HB_NO_OT_LAYOUT build
|
|
8a8fc37c
|
2023-05-03T14:57:00
|
|
[GDEF] Use a cache for glyph classes
Shows 5% speedup for Roboto shaping.
|
|
323a1fe4
|
2023-05-03T13:52:43
|
|
[PairPos] Fix what I broke
|
|
a6f5f0dc
|
2023-05-03T13:45:39
|
|
[PairSet] Micro-optimize
|
|
4e495eb0
|
2023-05-03T13:40:46
|
|
[PairPos] Add an unlikely
|
|
5528bdd4
|
2023-05-03T13:35:10
|
|
[PairPos] Remove a likely
|
|
ae0fe02d
|
2023-05-03T13:24:08
|
|
[Ligature] Use slow path if 2 or fewer ligatures
|
|
ddd6c2e7
|
2023-05-03T13:16:39
|
|
[Ligature] Micro-optimize more
|
|
045ae4b0
|
2023-05-03T13:08:43
|
|
[GPOS] Micro-optimize
|
|
0fe90ebc
|
2023-05-03T12:49:31
|
|
[Ligature] Micro-optimize
|
|
51061d28
|
2023-05-03T12:46:04
|
|
[Ligature] Minor tweak to recent code
|
|
7881eadf
|
2023-05-02T14:56:18
|
|
[Ligature] Speed up
Match the first component of the ligature in the LigatureSet loop.
Speeds up Roboto shaping by 25%. I don't think it breaks anything.
The test suite seems happy.
|
|
95f15557
|
2023-05-02T16:37:31
|
|
[PairPosFormat2] Micro-optimize and don't kern if class2=0
If class2=0 we expect no kerning to happen. Just bail out.
|
|
59967154
|
2023-05-02T15:52:43
|
|
[PairPos2] Micro-optimize
|
|
49ac5e11
|
2023-05-02T12:12:26
|
|
[match_input] Micro-optimize
|
|
7e7f1d04
|
2023-05-02T12:06:00
|
|
Drop a pair of parantheses from likely/unlikely
Such that "if likely(...)" wouldn't compile.
|
|
db730f46
|
2023-05-02T11:55:10
|
|
Simplify likely/unlikely
This surprisingly saves bytes and speeds up.
|
|
2f9945ca
|
2023-05-02T11:33:31
|
|
[Glyph] Only treat numContours=-1 as Composite
Leave the other negative numbers as empty glyph.
|
|
db23be64
|
2023-05-02T00:06:08
|
|
[subset] clamp head *Min/*Max values to fit within 16 bit signed int.
Fixes fuzzer https://oss-fuzz.com/testcase-detail/4549472192692224.
|
|
a8b8eb53
|
2023-05-01T16:56:29
|
|
[Coverage] Micro-optimize
|
|
af21ea35
|
2023-05-01T16:34:50
|
|
[Coverage/serialize] Micro-optimize
|
|
491f2968
|
2023-05-01T15:58:57
|
|
[gvar] Micro-optimize
We don't need the flag in the case of apply_to_all.
|
|
19d8328b
|
2023-05-01T15:54:06
|
|
[VarComposite] Minor use pad instead of StructAfter
|
|
1b74cd7c
|
2023-05-01T15:41:12
|
|
[gvar] Micro-optimize
|
|
267ecd20
|
2023-05-01T14:05:17
|
|
[normalize] Micro-optimize
|
|
577bc8a2
|
2023-05-01T14:01:08
|
|
[layout] Micro-optimize
|
|
5b78e9a9
|
2023-05-01T13:45:42
|
|
[layout] Whitespace
|
|
3f9eb03b
|
2023-05-01T12:49:40
|
|
[graph] Micro-optimize
|
|
1cbb85dc
|
2023-04-30T11:31:46
|
|
[Glyph] Protect against an underflow
|
|
c7721f7d
|
2023-04-30T11:28:40
|
|
[Glyph] Reuse variables
|
|
e826d94a
|
2023-04-30T11:11:19
|
|
Call roundf() instead of _hb_roundf()
The former is defined as a macro expanding to the latter.
|
|
fbffd4e6
|
2023-04-30T10:45:19
|
|
[SimpleGlyph] Handle cubic curves when instancing
|
|
85a0a123
|
2023-04-30T10:40:50
|
|
[SimpleGlyph] Relax types
|
|
2e5e5665
|
2023-04-30T10:23:58
|
|
[SimpleGlyph] Micro-optimize
|
|
7b9832de
|
2023-04-29T12:56:07
|
|
[buffer] Whitespace
|
|
700975f7
|
2023-04-29T11:23:56
|
|
[gvar/glyf] Minor save a variable
|
|
07be0b68
|
2023-04-29T11:09:28
|
|
[VarComposite] Minor micro-optimize
|
|
ecd0f859
|
2023-04-29T10:51:59
|
|
[Composite] Minor micro-optimize
|
|
e768754b
|
2023-04-29T17:51:04
|
|
[buffer] fix `hb_buffer_t::similar` setting `replacement` to `src.invisible`
```cpp
void
hb_buffer_t::similar (const hb_buffer_t &src)
{
hb_unicode_funcs_destroy (unicode);
unicode = hb_unicode_funcs_reference (src.unicode);
flags = src.flags;
cluster_level = src.cluster_level;
replacement = src.invisible; // <- this should be src.replacement
invisible = src.invisible;
not_found = src.not_found;
}
```
|
|
afd432da
|
2023-04-28T14:55:37
|
|
[VarComposite] Fix an #ifdef check
|
|
b53f8c25
|
2023-04-28T14:49:22
|
|
[path-builder] Simplify initialization
|
|
6a4b87d0
|
2023-04-28T14:48:46
|
|
[path-builder] Remove double-initialization
|
|
4a102eff
|
2023-04-28T14:38:34
|
|
[gvar] Minor always pass cache
We now check for access in calculate_scalar(), so no need to
check fof error here.
|
|
06504cb0
|
2023-04-28T13:13:18
|
|
[PairPosFormat2] Minor use false instead of 0
|
|
262f029e
|
2023-04-28T12:57:24
|
|
[algs] Undo touching HACKMEM 169
|
|
9ed43dc5
|
2023-04-28T12:38:26
|
|
[PairPosFormat2] Reuse a value
|
|
859f7d41
|
2023-04-28T12:22:11
|
|
[set-digest] Comment
|
|
bd62a91d
|
2023-04-28T12:01:21
|
|
[algs] 64bit popcount
|
|
5b0d8181
|
2023-04-28T11:40:42
|
|
[Glyph] Add missing break
|
|
e5dfb6a4
|
2023-04-28T11:38:12
|
|
[SimpleGlyph] Use hb_memset instead of memset
|
|
1b0c5a3e
|
2023-04-28T11:16:11
|
|
[VarComposite] Comment
|
|
b0e763f5
|
2023-04-28T10:45:23
|
|
[VarComposite] Micro-optimize get_num_points
|
|
29d57658
|
2023-04-28T10:33:50
|
|
[VarComposite] Micro-optimize
|
|
bf97f880
|
2023-04-28T10:28:17
|
|
[VarComposite] Minor notation
|
|
e9738563
|
2023-04-28T10:22:40
|
|
[VarComposite] Speedup get_size()
|
|
21ba0b68
|
2023-04-27T19:15:41
|
|
[cvt] Remove unneeded initialization
|
|
b3fed4fa
|
2023-04-27T22:13:30
|
|
[repacker] fix fuzzer found memory leak.
Fixes https://oss-fuzz.com/testcase-detail/5196242811748352
|
|
247ffe38
|
2023-04-27T16:28:47
|
|
Merge pull request #4211 from harfbuzz/glyf-inplace
Glyf inplace
|
|
c800c0cf
|
2023-04-27T15:12:02
|
|
[Glyph] Load composite glyphs in-place
|
|
f90e3fc3
|
2023-04-27T14:39:33
|
|
[Composites] Pre-alloc phantom-points space
|
|
0c7cb575
|
2023-04-27T14:21:44
|
|
[VarComposite] Micro-optimization for advance-only
|
|
bdce23a0
|
2023-04-27T14:07:57
|
|
[Glyph] Don't load component glyphs is phantom_only
Drastically speeds up variable advance calculation when HVAR
is missing. Let's see what I broke...
|
|
e2be7865
|
2023-04-27T13:54:06
|
|
[VarComposite] Minor rewrite
|
|
b9b85da3
|
2023-04-27T11:17:24
|
|
[instancer] no need to create hb_font_t object when fetching delta from varstore
|
|
58f79063
|
2023-04-27T13:35:32
|
|
[VarComposite] Set min_size to 5
|
|
28b5a47d
|
2023-04-27T13:31:53
|
|
[VarComposite] Reuse a variable
|
|
977c2f9c
|
2023-04-27T13:25:30
|
|
[glyf] Micro-optimize
|
|
a4b4536a
|
2023-04-27T13:14:52
|
|
Revert "[glyf] Micro-optimize"
This reverts commit 2bbb605d08298047164a20a242f4cfcfbe68c309.
In case of phantoms_only we were leaving array uninitialized.
This is why the fedora-valgrind bot broke.
|
|
1c4e7e4f
|
2023-04-27T13:05:54
|
|
[VarComposite] Rewrite code with ?
|
|
9491a3dd
|
2023-04-27T13:01:27
|
|
[VarComposite] Minor notation
|
|
644e0551
|
2023-04-27T13:00:24
|
|
[VarComposite] Minor move code
|
|
79aa9e93
|
2023-04-27T12:57:25
|
|
[VarComposite] Optimize translate, second try
|
|
83bbeaca
|
2023-04-27T12:49:56
|
|
[VarComposite] Minor move code
|
|
9b5afad4
|
2023-04-27T12:38:44
|
|
[var] Fix assertion
Fixes https://oss-fuzz.com/testcase-detail/4861707188305920
|
|
7cb95c8a
|
2023-04-27T12:28:00
|
|
Revert "[VarComposite] Optimize translate()"
This reverts commit 6a55e73d6aa9a378789d4101849f1508ac6fff3d.
This was wrong.
|
|
b79a49f1
|
2023-04-27T12:21:32
|
|
[VarComposite] Optimize get_points()
|
|
51891e8f
|
2023-04-27T12:16:12
|
|
[VarComposite] Micro-optimize
|
|
0f05ced1
|
2023-04-27T11:59:28
|
|
[VarComposite] Optimize transformation functions more
|
|
65ea95b9
|
2023-04-27T11:52:56
|
|
[VarComposite] Optimize skew()
|
|
070f837b
|
2023-04-27T11:51:42
|
|
[VarComposite] Optimize rotate()
|