[kerx] Fix-up previous commit

A "&" was missing.  Go back to using pointers that are less error-prone.
This commit is contained in:
Behdad Esfahbod 2018-10-13 13:36:27 -04:00
parent 6d4b054234
commit 71f76f2f39
1 changed files with 9 additions and 9 deletions

View File

@ -232,9 +232,9 @@ struct KerxSubTableFormat2
unsigned int l = (this+leftClassTable).get_value_or_null (left, num_glyphs);
unsigned int r = (this+rightClassTable).get_value_or_null (right, num_glyphs);
unsigned int offset = l + r;
const FWORD v = StructAtOffset<FWORD> (&(this+array), offset);
if (unlikely (!v.sanitize (&c->sanitizer))) return 0;
return v;
const FWORD *v = &StructAtOffset<FWORD> (&(this+array), offset);
if (unlikely (!v->sanitize (&c->sanitizer))) return 0;
return *v;
}
inline bool apply (hb_aat_apply_context_t *c) const
@ -479,9 +479,9 @@ struct KerxSubTableFormat6
unsigned int offset = l + r;
if (unlikely (offset < l)) return 0; /* Addition overflow. */
if (unlikely (hb_unsigned_mul_overflows (offset, sizeof (FWORD32)))) return 0;
const FWORD32 &v = StructAtOffset<FWORD32> (&(this+t.array), offset * sizeof (FWORD32));
if (unlikely (!v.sanitize (&c->sanitizer))) return 0;
return v;
const FWORD32 *v = &StructAtOffset<FWORD32> (&(this+t.array), offset * sizeof (FWORD32));
if (unlikely (!v->sanitize (&c->sanitizer))) return 0;
return *v;
}
else
{
@ -489,9 +489,9 @@ struct KerxSubTableFormat6
unsigned int l = (this+t.rowIndexTable).get_value_or_null (left, num_glyphs);
unsigned int r = (this+t.columnIndexTable).get_value_or_null (right, num_glyphs);
unsigned int offset = l + r;
const FWORD &v = StructAtOffset<FWORD> (&(this+t.array), offset * sizeof (FWORD));
if (unlikely (!v.sanitize (&c->sanitizer))) return 0;
return v;
const FWORD *v = &StructAtOffset<FWORD> (&(this+t.array), offset * sizeof (FWORD));
if (unlikely (!v->sanitize (&c->sanitizer))) return 0;
return *v;
}
}