|
32cfa37e
|
2023-05-08T13:30:39
|
|
[instancer] command line support for partial instancing
-Also updated hb_subset_input_set_axis_range (), so user can define
default value as well
|
|
0065658e
|
2023-08-07T11:12:02
|
|
[instancer] enable cvar instancing code
|
|
fb447274
|
2023-08-07T09:44:41
|
|
[instancer] add instantiate () for gvar
|
|
746b112f
|
2023-08-07T09:26:42
|
|
[instancer] add serialize () for gvar
|
|
366ffd1e
|
2023-08-07T10:32:47
|
|
[instancer] fix move constructor for tuple_delta_t
|
|
3c86b096
|
2023-07-28T16:18:51
|
|
[instancer] Add instantiate () and compile_bytes() for gvar
-Also add support for using shared_points and shared_tuples
|
|
198612c1
|
2023-07-28T15:41:54
|
|
[instancer] add decompile_glyph_variations () for gvar
|
|
1d91622d
|
2023-07-18T09:52:40
|
|
[instancer] add a hashing impl for floating point type
|
|
eb116e16
|
2023-07-28T15:27:07
|
|
[instancer] Add new_gid->contour_points vector map in subset plan
- Add an API in Glyph to export original contour_points vector, which is
needed by infer_deltas when merging tuple variations with the same
tent
|
|
5a4694b6
|
2023-08-07T09:55:30
|
|
[instancer] add calc_inferred_deltas() for gvar
|
|
a0f810ef
|
2023-07-28T15:04:47
|
|
[instancer] add struct glyph_variations_t for gvar
-Add compile_peak_coords () in tuple_delta_t
-Add compile_shared_tuples () for glyph_variations_t
|
|
49dbe0cd
|
2023-08-06T15:07:57
|
|
Another try
|
|
483d4a87
|
2023-08-06T14:40:45
|
|
Fix bot
|
|
7989702a
|
2023-08-06T14:17:50
|
|
Audit and fix up serialize_subset uses
Fixes https://github.com/harfbuzz/harfbuzz/issues/4362
|
|
1d665c2b
|
2023-08-02T23:44:56
|
|
8.1.1
|
|
91c449a6
|
2023-08-02T14:40:55
|
|
[graph] Make space_for non-recursive
It was tail-recursive so perhaps the compiler did the same.
Anyway, make it explicit now.
|
|
dcd3afca
|
2023-08-01T20:09:34
|
|
[skippy-iter] Remove unused num_items
|
|
39048099
|
2023-08-01T19:41:12
|
|
[skippy-iter] Remove early stop
The optimization in (Chain)RuleSet matching relies on
matching one, even if num_items is out of range.
Fixes https://github.com/harfbuzz/harfbuzz/issues/4358
|
|
70b3fbed
|
2023-08-01T15:16:16
|
|
[graph] Fix invalid read when map gets resized
I don't fully understand how the old code was wrong, since
*v should be evaluated before the set() method call.
Yet this seems to fix a bug that could be reproduced
with HB_DEBUG_SUBSET_REPACK enabled and the following:
$ hb-repacker-fuzzer test/fuzzing/graphs/clusterfuzz-testcase-minimized-hb-repacker-fuzzer-6419865171525632
|
|
94d4283b
|
2023-08-01T15:05:17
|
|
[graph] Handle a malloc fail
Fixes https://oss-fuzz.com/testcase-detail/4579249263345664
|
|
603920e9
|
2023-08-01T14:58:33
|
|
[graph] Minor asserts
|
|
8d00476f
|
2023-08-01T14:27:37
|
|
[graph] Minor restructure a condition
|
|
7946984b
|
2023-08-01T14:18:03
|
|
[graph] More assert
|
|
3b386c37
|
2023-08-01T14:12:43
|
|
[graph] Minor assert
|
|
07e70330
|
2023-08-01T12:25:45
|
|
[graph] Error check
|
|
7a9aac1a
|
2023-08-01T12:05:22
|
|
[graph] Fixes to parent handling
|
|
2feac50b
|
2023-07-31T19:53:06
|
|
Revert "[gsubgpos] Keep another digest in the applicable_t"
This reverts commit fd79c7cecdf68fe4626943f29bd5edf1e603d2b2.
|
|
fd79c7ce
|
2023-07-31T19:52:15
|
|
[gsubgpos] Keep another digest in the applicable_t
The digest for all the remaining subtables combined.
The idea is to get out of the subtable look as soon as
no more can be applied.
Doesn't seem to speed up anything I tested. Going to revert.
|
|
e3fd69c8
|
2023-07-31T19:07:42
|
|
[layout] Inline another function
Code is smaller too.
|
|
9cdc043c
|
2023-07-31T18:53:29
|
|
[Cursive] Only sanitize what we use
|
|
25e9defa
|
2023-07-31T17:12:07
|
|
[sanitize] Inline check_struct
Though seems like the compiler was always inlining it anyway.
|
|
44026aa8
|
2023-07-31T16:47:06
|
|
[Cursive] Minor, adjust unsafe-to-concat if prev didn't sanitize
|
|
b382e616
|
2023-07-31T16:29:28
|
|
[GPOS] Sanitize Cursive positioning anchors lazily
Speeds up Duployan-Regular.otf load time by 30%.
Doesn't seem to slow down shaping in a measurable way.
|
|
fcb9e591
|
2023-08-01T00:57:06
|
|
8.1.0
|
|
d9c4d3ed
|
2023-07-31T12:43:12
|
|
[uniscribe] Fix warnings
|
|
29ad9304
|
2023-07-30T17:06:25
|
|
[layout] Minor add prealloc
|
|
a41368bd
|
2023-07-30T17:04:02
|
|
[buffer] Minor micro-optimize
|
|
dc35a0fb
|
2023-07-30T16:32:11
|
|
[ot-map] Speed up feature finding
New API:
- hb_ot_layout_collect_feature_map()
|
|
202888ec
|
2023-07-30T11:49:08
|
|
Fix mac bot
I think the new unsafe-to-concat is correct...
|
|
35a026c8
|
2023-07-30T11:28:59
|
|
[shape] Unsafe-to-concat around fraction slash
|
|
f19ca24a
|
2023-07-30T11:26:11
|
|
Revert "Revert "Require numerator and denominator in auto fraction""
This reverts commit 8fe506e153c530affd529e7175e813c3a878faed.
|
|
b2a73166
|
2023-07-30T11:23:19
|
|
[buffer] Fix unsafe_to_concat()
Ouch!
|
|
8fe506e1
|
2023-07-30T10:43:28
|
|
Revert "Require numerator and denominator in auto fraction"
This reverts commit f3e86937df345d7709de879af1d1a1502e84e1e9.
|
|
f3e86937
|
2023-07-30T08:28:23
|
|
Require numerator and denominator in auto fraction
|
|
23838e5a
|
2023-07-29T13:20:14
|
|
[graph] Error handling
|
|
04f49092
|
2023-07-28T14:37:52
|
|
[graph] Use a move instead of swap
|
|
3bedb0ee
|
2023-07-27T16:04:01
|
|
[graph] Minor rename
|
|
bb1f53c2
|
2023-07-27T13:29:56
|
|
[graph] Try fixing infinite loop found by CIFuzz under malloc fail
|
|
db3314c1
|
2023-07-27T13:20:32
|
|
[graph] Minor space type change
|
|
6bb61708
|
2023-07-27T13:02:55
|
|
[graph] Try fixing bots
|
|
1b5abb17
|
2023-07-27T12:41:43
|
|
[graph] Speed-up vertices having only one parent
|
|
f3d0b11d
|
2023-07-27T12:20:39
|
|
[graph] Make parents private
|
|
d3b997ee
|
2023-07-26T15:39:14
|
|
[graph] Use a hb_map_t to keep parents, instead of hb_vector_t
In some fonts, for example Noto Duployan-Regular, nodes can
have over a thousand parents... Speeds up 10% subsetting.
|
|
45a0d65c
|
2023-07-27T09:06:02
|
|
[instancer] cosmetic change
|
|
cb320d22
|
2023-07-27T10:43:07
|
|
Revert "[cff] Use float instead of double"
This reverts commit c8f67ac28eb18e65adda75818e2c472ad3936874.
Tests failing.
|
|
c8f67ac2
|
2023-07-27T10:34:45
|
|
[cff] Use float instead of double
Reduces memory usage slightly.
|
|
b36b100e
|
2023-07-26T14:42:46
|
|
[var] Remove byte_data_t; use hb_bytes_t
Now that we have hopefully fixed the bug preventing hb_bytes_t
use, remove the hack.
Ref.
5690840ceb190341f9960d2b975c4366566ae86b
https://github.com/harfbuzz/harfbuzz/issues/4138
|
|
c25b8c06
|
2023-07-26T12:47:15
|
|
Merge pull request #4335 from googlefonts/bug_fixes
[instancer] support avar table, fix issues in STAT/fvar tables
|
|
5cab0709
|
2023-07-26T09:56:07
|
|
[instancer] fix for missing to update tuple indices flag in operator +=
|
|
515f85d5
|
2023-07-24T11:10:17
|
|
[instancer] fix incorrect encoded_len
|
|
bccdcf5b
|
2023-07-21T10:17:43
|
|
[instancer] fix a bug in compiling deltas_y for gvar
|
|
5690840c
|
2023-07-26T09:53:32
|
|
[map] Another try at fixing archaic clang
Fixes (?) https://github.com/harfbuzz/harfbuzz/issues/4138
|
|
a3b18062
|
2023-07-25T11:11:07
|
|
[trak] Fix a couple return values
|
|
62e6f783
|
2023-07-25T08:32:21
|
|
[Cursive] round
|
|
60db1427
|
2023-07-24T20:49:32
|
|
[layout] Remove unused "max-size" cruft
|
|
8eb7889f
|
2023-07-24T20:31:12
|
|
Add max-size to static-size objects
|
|
e322949b
|
2023-07-24T20:28:37
|
|
[ArrayOf] Remove fast-path for offset to max-sized objects
Fixes timeout https://oss-fuzz.com/testcase-detail/6153196517851136
|
|
c91899be
|
2023-07-21T11:43:47
|
|
[gdef] Use set-digest for mark-filterint-sets
Speeds up Noto Duployan-Regular.otf by 45% percent!
|
|
e8948a4e
|
2023-07-20T22:12:53
|
|
[gsubgpos] Fix optimization
Fixes https://github.com/harfbuzz/harfbuzz/issues/4336
|
|
36c7ec44
|
2023-07-20T18:56:46
|
|
[sanitize] Simplify a return
|
|
13f05ab9
|
2023-07-20T09:57:02
|
|
[instancer] support avar table partial instancing
|
|
837885f0
|
2023-07-20T12:58:16
|
|
Revert "[sanitize/Coverage] Keep a map of sane coverages"
This reverts commit a689114898cc3e8f1c6ba7cc49cd6c3639d91250.
|
|
0ab90671
|
2023-07-20T12:57:16
|
|
[sanitize/Coverage] Keep a map of sane coverages
Fonts like Gulzar reuse the same coverage over a thousand times
sometimes.
However, this doesn't speed up sanitize unfortunately. Looks
like calling Coverage::sanitize() is already very fast. We're
just doing A LOT of it.
The map slowed it down in fact. A set was even slower.
Going to revert.
|
|
7de2f515
|
2023-07-20T12:46:54
|
|
[set] Remove dependency on hb-machinery.hh
|
|
e8de5cb0
|
2023-07-20T11:31:13
|
|
[gsubgpos] Use a couple variables
|
|
0ccd61a3
|
2023-07-19T16:42:30
|
|
[gsubgpos] Micro-optimize
|
|
b01c1650
|
2023-07-19T16:35:10
|
|
[gsubgpos] Minor error handling
|
|
ee5f200b
|
2023-07-19T12:26:50
|
|
[gsubgpos] Remove un unnecessary variable
|
|
a0bb2d3a
|
2023-07-19T11:21:01
|
|
[instancer] support STAT table for all instancing operations
|
|
42c6a3a1
|
2023-07-19T12:07:19
|
|
[gsubgpos] Remove unnecessary condition
Second is always set in this branch.
|
|
b5de54e1
|
2023-07-19T11:19:06
|
|
[gsubgpos] Also match second component in (Chain)RuleSet::apply()
Another 40% speedup in shaping Gulzar-Regular.
|
|
73d94dbd
|
2023-07-19T10:33:57
|
|
[instancer] bug fixes in fvar: add missing instanceCount, update axis limit
|
|
730f579f
|
2023-07-18T15:09:36
|
|
[instancer] store float value rather than F2DOT14 int value in axes_location map
|
|
efbd257a
|
2023-07-18T14:50:32
|
|
[instancer] memory leak fix in cvar
|
|
a9e9279b
|
2023-07-18T12:24:17
|
|
Merge pull request #4329 from googlefonts/instancer_solver_fix
port instancer solver normalizeValue fixes from fonttools
|
|
aa381ae9
|
2023-07-18T10:42:13
|
|
[ReverseChain] Remove SIZE_MAX
Oops. Can't set it since the struct has offsets.
|
|
e583c9e9
|
2023-07-18T10:34:26
|
|
[ReverseChain] Add max-size
|
|
7a2f9dcf
|
2023-07-18T04:36:15
|
|
[matcher] Move initializers inline
|
|
5ee015ec
|
2023-07-17T13:54:34
|
|
[instancer-solver] remove unused normalizeValue() code
|
|
6c25c752
|
2023-07-17T13:47:38
|
|
[instancer] use renormalized values when instantiating Condition table
|
|
73ce3015
|
2023-07-17T13:46:57
|
|
[instancer-solver] port optimization and more tests from fonttools
|
|
350423df
|
2023-07-17T11:10:19
|
|
[instancer-solver] fix tests
|
|
12be4cb1
|
2023-07-17T11:08:54
|
|
[instancer-solver] fix APIs calling rebase_tent() with TripleDistances
|
|
165f3e60
|
2023-07-17T09:46:03
|
|
[instancer-solver] add renormalizeValue() and store axis->distances map
|
|
d92a7a58
|
2023-07-17T11:27:38
|
|
[gsubgpos] Inline a couple functions
Produces smaller code.
|
|
4ea3737d
|
2023-07-17T09:50:28
|
|
[gsubgpos] Add fast-path for end-of-string in (Chain)RuleSet::apply()
|
|
e7ce6339
|
2023-07-17T08:52:12
|
|
[algs] Fix -Wcomma errors
Fixes https://github.com/harfbuzz/harfbuzz/issues/4328
|
|
49730531
|
2023-07-16T13:09:49
|
|
Config
|
|
645fabd1
|
2023-07-16T11:36:59
|
|
[gsubgpos] Vastly speed up ChainRuleSet / RuleSet matching
Match the first component in a fast loop.
Idea replicated from LigatureSet.
Speeds up Gulzar shaping by 22%!
37% in NotoNastaliqUrdu!
|
|
77080f86
|
2023-07-16T11:26:32
|
|
.
|