Revert "[aat.morx] Remove set_object() business"

This reverts commit ae8ed58a6e.

Apparently this broke Apple Chancery from OS X 10.12 :(.
Investigating...
This commit is contained in:
Behdad Esfahbod 2018-11-24 22:16:59 -05:00
parent c8a2dc820e
commit 748198a671
1 changed files with 8 additions and 0 deletions

View File

@ -1026,6 +1026,8 @@ struct Chain
if (reverse)
c->buffer->reverse ();
c->sanitizer.set_object (*subtable);
subtable->dispatch (c);
if (reverse)
@ -1039,6 +1041,7 @@ struct Chain
subtable = &StructAfter<ChainSubtable<Types> > (*subtable);
c->set_lookup_index (c->lookup_index + 1);
}
c->sanitizer.reset_object ();
}
inline unsigned int get_size (void) const { return length; }
@ -1058,10 +1061,15 @@ struct Chain
unsigned int count = subtableCount;
for (unsigned int i = 0; i < count; i++)
{
c->reset_object ();
if (unlikely (!c->check_struct (subtable)))
return_trace (false);
c->set_object (*subtable);
if (!subtable->sanitize (c))
return_trace (false);
subtable = &StructAfter<ChainSubtable<Types> > (*subtable);
}
c->reset_object ();
return_trace (true);
}