diff options
author | Pedro J. Estébanez <pedrojrulez@gmail.com> | 2023-02-13 10:44:33 +0100 |
---|---|---|
committer | Pedro J. Estébanez <pedrojrulez@gmail.com> | 2023-04-03 09:13:48 +0200 |
commit | abc13dbd0b5e3c12de3d52ea3b843e7c607bdf1d (patch) | |
tree | 4f93886fa78b19258c366b007fce91a2f8369857 /thirdparty/harfbuzz/src/OT/Layout/GPOS/SinglePosFormat1.hh | |
parent | df7834ac96398da0cb6b09f77ec010d4dff467f7 (diff) | |
download | redot-engine-abc13dbd0b5e3c12de3d52ea3b843e7c607bdf1d.tar.gz |
Update HarfBuzz to 7.1.0
Diffstat (limited to 'thirdparty/harfbuzz/src/OT/Layout/GPOS/SinglePosFormat1.hh')
-rw-r--r-- | thirdparty/harfbuzz/src/OT/Layout/GPOS/SinglePosFormat1.hh | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/thirdparty/harfbuzz/src/OT/Layout/GPOS/SinglePosFormat1.hh b/thirdparty/harfbuzz/src/OT/Layout/GPOS/SinglePosFormat1.hh index b4c9fc3db0..623e4e66b2 100644 --- a/thirdparty/harfbuzz/src/OT/Layout/GPOS/SinglePosFormat1.hh +++ b/thirdparty/harfbuzz/src/OT/Layout/GPOS/SinglePosFormat1.hh @@ -28,7 +28,15 @@ struct SinglePosFormat1 TRACE_SANITIZE (this); return_trace (c->check_struct (this) && coverage.sanitize (c, this) && + /* The coverage table may use a range to represent a set + * of glyphs, which means a small number of bytes can + * generate a large glyph set. Manually modify the + * sanitizer max ops to take this into account. + * + * Note: This check *must* be right after coverage sanitize. */ + c->check_ops ((this + coverage).get_population () >> 1) && valueFormat.sanitize_value (c, this, values)); + } bool intersects (const hb_set_t *glyphs) const @@ -63,7 +71,7 @@ struct SinglePosFormat1 if (HB_BUFFER_MESSAGE_MORE && c->buffer->messaging ()) { c->buffer->message (c->font, - "positioning glyph at %d", + "positioning glyph at %u", c->buffer->idx); } @@ -72,7 +80,7 @@ struct SinglePosFormat1 if (HB_BUFFER_MESSAGE_MORE && c->buffer->messaging ()) { c->buffer->message (c->font, - "positioned glyph at %d", + "positioned glyph at %u", c->buffer->idx); } @@ -144,7 +152,7 @@ struct SinglePosFormat1 ; bool ret = bool (it); - SinglePos_serialize (c->serializer, this, it, c->plan->layout_variation_idx_delta_map, c->plan->all_axes_pinned); + SinglePos_serialize (c->serializer, this, it, &c->plan->layout_variation_idx_delta_map, c->plan->all_axes_pinned); return_trace (ret); } }; |