src/hb-aat-layout-common.hh | 14 ++++++++++++++ src/hb-aat-layout-kerx-table.hh | 2 +- 2 files changed, 15 insertions(+), 1 deletion(-)
New commits: commit 42a2b496e428521151ff5cb07454d2e993f892cc Author: Behdad Esfahbod <[email protected]> Date: Wed Nov 28 15:24:30 2018 -0500 [kerx] Fix Format2 index calc again diff --git a/src/hb-aat-layout-common.hh b/src/hb-aat-layout-common.hh index 253b56fe..c0b0e375 100644 --- a/src/hb-aat-layout-common.hh +++ b/src/hb-aat-layout-common.hh @@ -689,6 +689,13 @@ struct ObsoleteTypes return (offset - ((const char *) array - (const char *) base)) / sizeof (T); } template <typename T> + static inline unsigned int byteOffsetToIndex (unsigned int offset, + const void *base, + const T *array) + { + return offsetToIndex (offset, base, array); + } + template <typename T> static inline unsigned int wordOffsetToIndex (unsigned int offset, const void *base, const T *array) @@ -712,6 +719,13 @@ struct ExtendedTypes return offset; } template <typename T> + static inline unsigned int byteOffsetToIndex (unsigned int offset, + const void *base, + const T *array) + { + return offset / 2; + } + template <typename T> static inline unsigned int wordOffsetToIndex (unsigned int offset, const void *base, const T *array) diff --git a/src/hb-aat-layout-kerx-table.hh b/src/hb-aat-layout-kerx-table.hh index abd577b9..7caf45d5 100644 --- a/src/hb-aat-layout-kerx-table.hh +++ b/src/hb-aat-layout-kerx-table.hh @@ -255,7 +255,7 @@ struct KerxSubTableFormat1 unsigned int tuple_count = MAX (1u, table->header.tuple_count ()); unsigned int kern_idx = Format1EntryT::kernActionIndex (entry); - kern_idx = Types::offsetToIndex (kern_idx, &table->machine, kernAction.arrayZ); + kern_idx = Types::byteOffsetToIndex (kern_idx, &table->machine, kernAction.arrayZ); const FWORD *actions = &kernAction[kern_idx]; if (!c->sanitizer.check_array (actions, depth, tuple_count)) { _______________________________________________ HarfBuzz mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/harfbuzz
