[aat.morx] Remove set_object() business
With OS X 10.13 Apple Chancery fails to ligate if we limit each morx sub-chain to its declared length. Perhaps their newer compiler does object-sharing across sub-chains. Anyway, since that's a valid, if unspecified, way to compile tables, remove enforcement. Probably do the same with kern/kerx.
This commit is contained in:
parent
b518e5af9f
commit
ae8ed58a6e
|
@ -1026,8 +1026,6 @@ struct Chain
|
|||
if (reverse)
|
||||
c->buffer->reverse ();
|
||||
|
||||
c->sanitizer.set_object (*subtable);
|
||||
|
||||
subtable->dispatch (c);
|
||||
|
||||
if (reverse)
|
||||
|
@ -1041,7 +1039,6 @@ 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; }
|
||||
|
@ -1061,15 +1058,10 @@ 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);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue