Garret Rieger
40342c9437
[subset] check for addition overflow in hdmx size calculation.
...
Fixes https://oss-fuzz.com/testcase-detail/4877336988483584 .
2022-12-21 16:44:06 -07:00
Behdad Esfahbod
f0a1892ff9
[serialize] Remove unnecessary pointer indirection
2021-07-28 17:36:22 -06:00
Garret Rieger
73ed59f7a6
[subset] store errors in the serializer as a flag set.
...
Make check_assign/check_equal specify the type of error to set.
2021-03-17 15:58:34 -07:00
Ebrahim Byagowi
08428a15c3
minor, spacing
2020-04-24 23:45:17 +04:30
Ebrahim Byagowi
a224f4179f
Turn more of simple dagger chains to foreach
...
Less noise, as was agreed before and applied 385741d
also
2020-03-13 08:33:34 +03:30
Ebrahim Byagowi
4dc3db7344
Minor, fix warnings raised when built with -std=c++2a
...
Follow up to c184180
,
It was raising,
src/hb-ot-layout-common.hh:1067:63: warning: implicit capture of 'this' with a capture default of '=' is deprecated [-Wdeprecated-this-capture]
| hb_filter ([=] (const OffsetTo<TSubTable> &_) { return (this+_).intersects (glyphset, lookup_type); })
^
src/hb-ot-layout-common.hh:1067:19: note: add an explicit capture of 'this' to capture '*this' by reference
| hb_filter ([=] (const OffsetTo<TSubTable> &_) { return (this+_).intersects (glyphset, lookup_type); })
^
, this
and
src/hb-ot-layout-common.hh:2626:38: warning: implicit capture of 'this' with a capture default of '=' is deprecated [-Wdeprecated-this-capture]
{ r.collect_lookups (this, lookup_indexes); })
^
src/hb-ot-layout-common.hh:2625:18: note: add an explicit capture of 'this' to capture '*this' by reference
| hb_apply ([=] (const FeatureTableSubstitutionRecord& r)
^
, this
and
src/hb-ot-hdmx-table.hh:141:44: error: implicit capture of 'this' with a capture default of '=' is deprecated [-Werror,-Wdeprecated-this-capture]
return device_record->widthsZ.as_array (get_num_glyphs ()) [_];
^
src/hb-ot-hdmx-table.hh:137:17: note: add an explicit capture of 'this' to capture '*this' by reference
| hb_map ([=] (hb_codepoint_t _)
^
, this
2020-02-06 16:25:54 +03:30
Behdad Esfahbod
78d35f0e78
Reduce captures of lambdas
2019-05-15 18:15:05 -07:00
Behdad Esfahbod
00195a22ce
[hdmx] Adjust to hb_iota() behavior change
...
Use hb_range() instead.
2019-05-09 12:14:36 -07:00
Behdad Esfahbod
b710176ce2
[hdmx] Touch up
2019-05-08 15:47:24 -07:00
Garret Rieger
e8ef0e627c
[subset] WIP convert hdmx subsetting to use iterators.
2019-05-08 15:47:24 -07:00
Garret Rieger
d5decf9bf7
[subset] Move hdmx to subset2.
2019-05-08 15:47:24 -07:00
Behdad Esfahbod
b986c6a321
[C++11] Remove IntType::set() in favor of operator=
2019-03-29 20:21:21 -07:00
Garret Rieger
05e99c86ba
[subset] A few small fixes for the new subset plan api.
2019-01-29 13:19:21 -08:00
Garret Rieger
23f364429d
[subset] Fix hdmx subsetting when retain gids is enabled.
2019-01-29 13:19:21 -08:00
Behdad Esfahbod
ef00654962
Convert tag enum class consts to static constexpr
...
Part of https://github.com/harfbuzz/harfbuzz/issues/1553
2019-01-22 12:17:26 +01:00
Behdad Esfahbod
474a12058d
[array/vector] Rename len to length
2018-12-21 18:53:01 -05:00
Ebrahim Byagowi
e412008599
Remove redundant void from C++ sources ( #1486 )
2018-12-17 13:01:01 -05:00
Ebrahim Byagowi
b2ebaa9afa
Remove redundant 'inline' from methods ( #1483 )
2018-12-16 14:08:10 -05:00
Ebrahim Byagowi
7ee5c52345
minor style fix, use void in methods on no argument
2018-12-12 15:14:37 +03:30
Behdad Esfahbod
5c4fead734
Convert "static const hb_tag_t" constants to enum
2018-11-29 15:05:47 -05:00
Behdad Esfahbod
cb4bf85b14
[hdmx] Fix bounds checking
...
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11351
2018-11-16 02:02:24 -05:00
Behdad Esfahbod
af727b4e62
[hdmx] Minor
2018-11-16 01:55:39 -05:00
Ebrahim Byagowi
11aa0468ac
[subset] minor, adjust spaces
2018-11-16 00:02:47 +03:30
Behdad Esfahbod
0e0af11c62
[hdmx] Renames
2018-11-11 12:54:16 -05:00
Behdad Esfahbod
dff2c45f1e
Port rest from VAR to UnsizedArrayOf<>
2018-09-11 01:01:08 +02:00
Garret Rieger
21bf147054
[subset] Fix hdmx subsetted size calculation.
2018-09-05 19:31:55 -07:00
Behdad Esfahbod
a1e5e07c73
[subset] Hook up GSUB/GPOS, but still disabled
...
They are still in the drop list.
2018-09-05 16:24:28 -07:00
Behdad Esfahbod
d1f29908c2
[subset] Add hb_subset_context_t<>
2018-08-31 16:31:00 -07:00
Behdad Esfahbod
aba0a945c5
[subset] Add hb-subset-input.hh and make hb-subset.hh toplevel include
2018-08-31 13:25:19 -07:00
Behdad Esfahbod
c77ae40852
Rename hb-*private.hh to hb-*.hh
...
Sorry for the noise, downstream custom builders. Please adjust.
2018-08-25 22:36:36 -07:00
Behdad Esfahbod
bddeb2b10c
Minor renamings of internal inline functions
2018-07-10 14:13:21 +02:00
Garret Rieger
251cc977e9
[subset] Switch to using hb_map_t inside of hb_subset_plan_t.
2018-05-30 17:23:59 -06:00
Ebrahim Byagowi
277e328986
Make some of implicit header uses explicit ( #989 )
...
Splitted from #950 and #986 IIRC Chromium had a policy about this encouraging it,
not sure about automated way to detect and add them but for now lets have the needed
ones of them.
2018-04-17 09:13:35 +04:30
Ebrahim Byagowi
a02c3ee70f
Add or update tables specifications links
2018-04-12 13:44:32 +04:30
Garret Rieger
07851aae9d
[subset] Couple of fixes for fuzzer discovered issues. ( #924 )
...
* [subset] sanitize individual DeviceRecord's as part of hdmx sanitization.
* [subset] Fix out of bounds read with non-two byte align glyphs.
* [subset] Just use size_device_record >= DeviceRecord::min_size.
* [subset] Add TODO.
* [subset] Re-order checks in hdmx sanitize.
2018-03-26 19:56:56 -07:00
Behdad Esfahbod
6f46883f5b
[hdmx] Minor
2018-03-26 19:55:22 -07:00
Garret Rieger
3531efdb4c
[subset] Fixed out of bounds read when subsetting hdmx.
2018-03-20 19:47:36 -06:00
Behdad Esfahbod
c2e4713b5b
[hdmx] Fix sanitize()
2018-02-23 10:45:03 -08:00
Behdad Esfahbod
84d4bb91ce
[hdmx] Minor
2018-02-23 10:38:35 -08:00
Behdad Esfahbod
cf7a6e520e
[hdmx] Move DeviceRecord to toplevel again
...
More readable.
2018-02-23 10:34:26 -08:00
Garret Rieger
96d7805a92
[subset] More complete sanitization implementation for hdmx.
2018-02-22 16:48:28 -08:00
Garret Rieger
c02532a3d2
[subset] Formatting and comments in hdmx.
2018-02-22 16:40:50 -08:00
Garret Rieger
6b372f439b
[subset] In hb-ot-hdmx-table, s/glyf/hdmx.
2018-02-22 15:42:39 -08:00
Garret Rieger
bd18b6adf8
[subset] Move DeviceRecord inside of hdmx.
2018-02-22 15:42:39 -08:00
Garret Rieger
6704cded65
[subset] Add hdmx subsetting implementation.
2018-02-22 15:42:39 -08:00
Garret Rieger
84b68e5886
[subset] In hdmx serialize set the correct value of sizeDeviceRecord.
2018-02-22 15:42:39 -08:00
Garret Rieger
dddf44279f
[subset] When serializing a DeviceRecord in hdmx pad to make 32 bit aligned.
2018-02-22 15:42:39 -08:00
Garret Rieger
ab7a8f3b74
[subset] Begin implementing serialize for hdmx.
2018-02-22 15:42:39 -08:00
Garret Rieger
fe42862ab3
[subset] Sketch out a basic hb-ot-hdmx.hh.
2018-02-22 15:42:39 -08:00