Commit Graph

34 Commits

Author SHA1 Message Date
Garret Rieger 647b024784 [subset] Fix fuzzer issue https://oss-fuzz.com/testcase-detail/6521393809588224 2023-04-18 13:21:46 -06:00
Behdad Esfahbod 1d9dafbfd5 [glyf] Support cubic curves
https://github.com/harfbuzz/boring-expansion-spec/issues/41
2023-02-07 22:19:45 -07:00
Behdad Esfahbod 2eacc37e08 [vector] Add internal API for exact-size allocation
Use it from a couple of places.
2022-12-31 12:30:31 -07:00
Behdad Esfahbod 1e8f1ac677 [subset-glyf] Micro-optimize array access 2022-11-23 13:20:48 -07:00
Behdad Esfahbod 40634ceeb0 [glyf] Adjust data types 2022-11-22 15:07:16 -07:00
Behdad Esfahbod 04c525019c [glyf] Use a malloc instead of calloc 2022-11-22 14:54:55 -07:00
Behdad Esfahbod 024aa81805 [glyf] Micro-optimize encode_coord 2022-11-22 14:51:42 -07:00
Behdad Esfahbod b6694597f9 [glyf] Micro-optimize encode_flag() 2022-11-22 14:49:01 -07:00
Behdad Esfahbod d47cfe7936 [glyf] Minor use operator ++ 2022-11-22 14:45:04 -07:00
Behdad Esfahbod 03e6bde790 [glyf] Minor adjustment to lastflag handling
No logic change.
2022-11-22 14:40:50 -07:00
Behdad Esfahbod 0ca9fda889 [glyf] Remove misplaced comment 2022-11-22 14:39:10 -07:00
Behdad Esfahbod 4afcdf675b More hb_memcpy 2022-11-22 12:56:48 -07:00
Behdad Esfahbod 1758ee6646 [glyf] Minor write loop more idiomatically 2022-11-22 10:55:16 -07:00
Qunxin Liu e94fe2adf3 [instance] minor optimizations to glyf instancing 2022-09-29 12:14:43 -06:00
Behdad Esfahbod 84d33a1ed8 [glyf] Fix compiler warning 2022-08-23 13:13:13 -06:00
Qunxin Liu ac0e22fa8e [instance] update glyf/hmtx/vmtx tables 2022-08-22 09:29:37 -07:00
Behdad Esfahbod 34c6c0193c [glyf] Fix byterange check again 2022-06-27 20:26:57 -06:00
Behdad Esfahbod 20572f914c [glyf] Move read_flags into a function 2022-06-27 20:22:09 -06:00
Behdad Esfahbod 6e72c2e3fa [glyf] Add an assertion 2022-06-27 15:09:25 -06:00
Behdad Esfahbod d0836dee7a [glyf] Minor typo change 2022-06-27 13:05:58 -06:00
Behdad Esfahbod 5cca25e5d0 [glyf] Accumulate points as int
Everything is int at this stage.
Doesn't seem to matter for performance though.
2022-06-27 13:03:06 -06:00
Behdad Esfahbod d6f60b3c19 [glyf] Minor optimization 2022-06-27 13:00:08 -06:00
Behdad Esfahbod b30a3dcba3 [glyf] Another bounds check
Very unlikely that is needed but technically possible.
2022-06-27 12:56:54 -06:00
Behdad Esfahbod 2e9dbdcbbe [glyf] Protect against an unlikely overflow 2022-06-27 12:55:13 -06:00
Behdad Esfahbod a1c45bbb55 [glyf] Minor simplify 2022-06-26 17:30:16 -06:00
Behdad Esfahbod a21a9bb855 [glyf] Optimize flags decoding byte range checking 2022-06-26 17:24:29 -06:00
Behdad Esfahbod 0f1fdf461c [glyf] Optimize points decoding byte range checking 2022-06-26 17:22:45 -06:00
Behdad Esfahbod 51cfcf2957 [glyf] Optimize points decoding 2022-06-26 17:04:47 -06:00
Behdad Esfahbod 86b7022503 [glyf] Optimize flag decoding 2022-06-26 17:02:32 -06:00
Behdad Esfahbod fc72a1d22d [glyf] Add a pre-allocation for phantom points 2022-06-26 16:42:01 -06:00
Behdad Esfahbod 2d4557fe04 [glyf/SimpleGlyph] Use member pointer instead of lambda 2022-06-26 13:08:37 -06:00
Behdad Esfahbod 9ce9773040 [glyf/SimpleGlyph] Minor use constructor for contour_point_t 2022-06-26 13:08:37 -06:00
Behdad Esfahbod f897978f21 [glyf] Adjust a check-range 2022-06-26 13:08:37 -06:00
Behdad Esfahbod f0ec2b728e [glyf] Split off SimpleGlyph.hh 2022-06-25 17:55:16 -06:00