From 44f09afd5bd4f4f1ea47ca54ac9d605219b06910 Mon Sep 17 00:00:00 2001 From: Behdad Esfahbod Date: Wed, 10 Oct 2018 17:32:32 -0400 Subject: [PATCH] [kerx] Skip variation subtables --- src/hb-aat-layout-kerx-table.hh | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/hb-aat-layout-kerx-table.hh b/src/hb-aat-layout-kerx-table.hh index a4a4dab71..005208c60 100644 --- a/src/hb-aat-layout-kerx-table.hh +++ b/src/hb-aat-layout-kerx-table.hh @@ -312,21 +312,21 @@ struct kerx { bool reverse; + if (table->coverage & (KerxTable::CrossStream | KerxTable::Variation)) + goto skip; /* We do NOT handle cross-stream or variation kerning. */ + if (HB_DIRECTION_IS_VERTICAL (c->buffer->props.direction) != bool (table->coverage & KerxTable::Vertical)) - goto skip; - - if (table->coverage & KerxTable::CrossStream) - goto skip; /* We do NOT handle cross-stream kerning. None of Apple fonts use it. */ + goto skip; reverse = bool (table->coverage & KerxTable::Backwards) != HB_DIRECTION_IS_BACKWARD (c->buffer->props.direction); if (!c->buffer->message (c->font, "start kerx subtable %d", c->lookup_index)) - goto skip; + goto skip; if (reverse) - c->buffer->reverse (); + c->buffer->reverse (); c->sanitizer.set_object (*table); @@ -337,7 +337,7 @@ struct kerx table->dispatch (c); if (reverse) - c->buffer->reverse (); + c->buffer->reverse (); (void) c->buffer->message (c->font, "end kerx subtable %d", c->lookup_index);