From 527e60b0153bf0d89e7430bcc87e243c71c86ce1 Mon Sep 17 00:00:00 2001 From: Behdad Esfahbod Date: Tue, 24 Sep 2024 09:18:08 -0600 Subject: [PATCH] [morx] Relax sanitizing Ignore claimed ChainSubtable length and only sanitize against the whole table. Works around what seems to be a broken LookupFormat0 in a Noncontextual subtable in GeezaPro on MacOS 15.0 Fixes https://github.com/harfbuzz/harfbuzz/issues/4873 --- src/hb-aat-layout-morx-table.hh | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/hb-aat-layout-morx-table.hh b/src/hb-aat-layout-morx-table.hh index 4a0f6da16..d31834402 100644 --- a/src/hb-aat-layout-morx-table.hh +++ b/src/hb-aat-layout-morx-table.hh @@ -1062,7 +1062,8 @@ struct ChainSubtable bool apply (hb_aat_apply_context_t *c) const { TRACE_APPLY (this); - hb_sanitize_with_object_t with (&c->sanitizer, this); + // Disabled for https://github.com/harfbuzz/harfbuzz/issues/4873 + //hb_sanitize_with_object_t with (&c->sanitizer, this); return_trace (dispatch (c)); } @@ -1075,7 +1076,8 @@ struct ChainSubtable c->check_range (this, length))) return_trace (false); - hb_sanitize_with_object_t with (c, this); + // Disabled for https://github.com/harfbuzz/harfbuzz/issues/4873 + //hb_sanitize_with_object_t with (c, this); return_trace (dispatch (c)); }