|
e4fff64c
|
2023-01-24T00:52:26
|
|
[repacker] check duplicate() for success.
Fixes fuzzer testcase https://oss-fuzz.com/testcase-detail/5475787333828608.
|
|
ed023f66
|
2023-01-12T17:04:24
|
|
Enable -Wformat-signedness
And fix the codebase.
|
|
35233d25
|
2022-12-07T00:47:28
|
|
[repacker] fix fuzzer reported stack overflow.
Fixes https://oss-fuzz.com/testcase-detail/6014493291577344.
|
|
f1d34893
|
2022-12-05T19:33:15
|
|
[repacker] bail on failure to alloc assigned_bytes set.
Fixes fuzzer issue https://oss-fuzz.com/testcase-detail/5390364397928448.
|
|
239a5aca
|
2022-12-05T19:15:36
|
|
[repacker] don't allow references to the null object in graph.
Fixes fuzzer issue https://oss-fuzz.com/testcase-detail/6714085985353728
|
|
de5a6213
|
2022-12-01T23:37:16
|
|
[repacker] enforce root node having no incoming edges.
|
|
30e405e4
|
2022-12-01T22:12:59
|
|
[repacker] ensure link obj indices are valid.
|
|
554ed06f
|
2022-12-01T21:51:17
|
|
[repacker] add cycle detection to the graph sort.
This allows us to bail early if the graph is not acyclic.
|
|
9e99d084
|
2022-09-08T23:19:02
|
|
[repacker] validate link widths during repacker setup.
|
|
edf7a295
|
2022-09-08T22:59:34
|
|
[repacker] Validate link positions before running the repacker.
|
|
deca30b2
|
2022-09-08T21:10:06
|
|
[repacker] get repacker fuzzer working.
Additionally add helper method that allows a graph to be saved as a fuzzer seed.
|
|
985b19f6
|
2022-09-07T22:21:16
|
|
[repacker] begin implementing a fuzzer for the repacker api.
|
|
915c1a00
|
2022-11-26T14:48:57
|
|
[vector] Add remove_unordered
Saves 5% in NotoNastaliq/1000 subset benchmark.
|
|
c813f842
|
2022-10-20T19:45:23
|
|
Make build work for arm-none-eabi
|
|
99f4668e
|
2022-09-29T19:39:59
|
|
[repacker] use mutable copies of Coverage/ClassDef in MarkBasePos shrink operation.
Also make mutable copies (when needed) of the top level subtables during a split operation.
|
|
56c46709
|
2022-09-20T17:39:54
|
|
[subset] Fix compiler warning
Fixes https://github.com/harfbuzz/harfbuzz/issues/3823
|
|
29e3b246
|
2022-08-18T01:19:54
|
|
[repacker] optimzie remove_real_links as it's a hot method.
|
|
46b5dbd7
|
2022-08-18T01:18:16
|
|
[repacker] optimize index_for_offset.
|
|
ac1a853a
|
2022-08-18T00:55:47
|
|
[repacker] implement sanitize methods for MarkBasePos.
|
|
a3ed9f90
|
2022-08-17T23:39:11
|
|
[repacker] fix graph comparison, and mark base pos generation for the tests.
|
|
1405f96b
|
2022-08-15T23:48:00
|
|
[repacker] change run_resolve_overflow_test to check for graph equivalence.
Replaces a check for an exact match on the final serialized bytes. The previous check enforced equivalent topological sorting between result and expected, but we only really care that the graph's are equivalent and don't overflow.
|
|
07fd0528
|
2022-08-15T23:16:51
|
|
[repacker] add graph equality check.
Does not compare topological sorting, but looks for equivalence of the two graphs.
|
|
5cf2a25a
|
2022-08-15T22:49:24
|
|
[repacker] Expose on internal method in the repacker that allows the caller to pass in/out a graph.
Will be used in testing so we can compare graphs instead of packed result.
|
|
0083fd10
|
2022-08-11T22:09:46
|
|
[repacker] add as_table() helper to graph.
|
|
b00eb776
|
2022-08-11T20:33:21
|
|
[repack] Add add_link helper to graph.
|
|
1acd2a8b
|
2022-08-11T20:22:31
|
|
[repacker] implement MarkBasePosFormat1::clone_range.
|
|
5d824c09
|
2022-08-05T01:37:14
|
|
[repacker] during table splits don't mutate shared coverage/classdef in place.
If other subtables are sharing coverage with a subtable being split we have to duplicate the coverage/classdef tables before they are modified during the shrink operation.
|
|
3b91fb2a
|
2022-07-29T20:04:42
|
|
[repacker] cleanup todo.
|
|
fb3f6ad7
|
2022-07-29T00:25:19
|
|
[repacker] ensure lookup map is updated when lookup memory location changes.
|
|
65afed04
|
2022-07-28T20:54:28
|
|
[repacker] more bug fixes.
|
|
1002a3dc
|
2022-07-28T20:17:36
|
|
[repacker] bug fixes.
|
|
29cb8818
|
2022-07-27T21:02:48
|
|
[repacker] new coverage serialization in PairPosFormat1.
|
|
8d63f60e
|
2022-07-27T20:36:20
|
|
[repack] add graph_t::move_child helper function.
|
|
241ebc93
|
2022-07-26T00:04:20
|
|
[repacker] fix include paths.
|
|
9d0b2da5
|
2022-07-25T20:46:49
|
|
[repacker] count subtable size in each group of consecutive layers for extension promotion decisions.
Enforce that the following groups are all <64k in size:
- LookupList + Lookups
- Lookups + SubTables
- SubTables + Descendants
|
|
9db3beb7
|
2022-07-25T19:42:58
|
|
[repacker] include LookupList size when calculating size of 16bit space for ext promotion decisions.
|
|
ad0041f5
|
2022-07-21T22:50:14
|
|
[repacker] Add basic version of the extension promotion selection algorithm.
|
|
ae290ff4
|
2022-07-21T21:45:04
|
|
[repacker] add sanitization for GSUB/LookupList/Lookup during extension promotion.
|
|
ce03c353
|
2022-07-21T19:07:55
|
|
[repacker] add make_extension_context_t.
|
|
815bb82b
|
2022-07-20T18:17:29
|
|
[repack] fix incorrect extension object bounds.
|
|
7e6f6c3e
|
2022-07-20T03:26:29
|
|
[repack] fix new node bounds.
|
|
b1d38a6d
|
2022-07-19T23:33:16
|
|
[repack] WIP implement extension promotion mechanism.
|
|
3f7a74ff
|
2022-07-19T21:50:13
|
|
[repacker] WIP extension promotion implementation.
|
|
b4f561db
|
2022-07-06T18:49:23
|
|
[subset] Add some comments to find_space_roots/find_32_bit_roots methods.
|
|
401066bf
|
2022-07-06T18:44:40
|
|
[subset] Prepare the repacker for handling 24bit offsets in GSUB/GPOS.
The boring expansion (https://github.com/be-fonts/boring-expansion-spec) plans to introduce 24bit offsets into GSUB/GPOS. This changes the repacker to treat 24 bit offsets similar to 32 bit offsets and assign the top level 24 bit offsets into spaces to improve packing.
|
|
2674962c
|
2022-06-24T21:00:54
|
|
[repacker] Add comment to graph class.
|
|
7078560e
|
2022-06-24T19:20:20
|
|
[repacker] extract graph serialization code into a seperate file.
|
|
20b02a67
|
2022-06-24T18:58:17
|
|
[repacker] Begin splitting up the repacker implementation into several files.
|