diff options
author | Behdad Esfahbod <behdad@behdad.org> | 2018-11-19 13:09:53 -0500 |
---|---|---|
committer | Behdad Esfahbod <behdad@behdad.org> | 2018-11-19 13:09:53 -0500 |
commit | 56c9238d3da8c034336cf80ba37e03e33c493718 (patch) | |
tree | 797ce9d530693924ea1fa7e0c05722ed8b6f358d | |
parent | 4a6a692e3ea4fab632a0162c6d513dc151054d8f (diff) |
[fvar] Rewrite sanitize
-rw-r--r-- | src/hb-ot-var-fvar-table.hh | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/src/hb-ot-var-fvar-table.hh b/src/hb-ot-var-fvar-table.hh index b4fdd5fa..99d2fd5c 100644 --- a/src/hb-ot-var-fvar-table.hh +++ b/src/hb-ot-var-fvar-table.hh @@ -101,12 +101,10 @@ struct fvar return_trace (version.sanitize (c) && likely (version.major == 1) && c->check_struct (this) && + axisSize == 20 && /* Assumed in our code. */ instanceSize >= axisCount * 4 + 4 && - axisSize <= 1024 && /* Arbitrary, just to simplify overflow checks. */ - instanceSize <= 1024 && /* Arbitrary, just to simplify overflow checks. */ - c->check_range (this, firstAxis) && - c->check_range (&StructAtOffset<char> (this, firstAxis), - axisCount * axisSize + instanceCount * instanceSize)); + get_axes ().sanitize (c) && + c->check_range (get_first_instance (), instanceCount, instanceSize)); } inline unsigned int get_axis_count (void) const |