Avoid accessing layout tables at face destruction
authorBehdad Esfahbod <behdad@behdad.org>
Mon, 29 Dec 2014 00:03:26 +0000 (16:03 -0800)
committerBehdad Esfahbod <behdad@behdad.org>
Mon, 29 Dec 2014 00:03:26 +0000 (16:03 -0800)
commit395b35903e052aecc97d0807e4f813c64c0d2b0b
tree992d705e6730665697d2e13c7f7f1fec17aeb1f4
parent7d5e7613ced3dd39d05df83ca7e8952cbecd68f6
Avoid accessing layout tables at face destruction

"Fixes" https://bugs.freedesktop.org/show_bug.cgi?id=86300

Based on discussion someone else who had a similar issue, most probably
the user is releasing FT_Face before destructing hb_face_t / hb_font_t.
While that's a client bug, and while we can (and should) use FreeType
refcounting to help avoid that, it happens that we were accessing
the table when we didn't really have to.  Avoid that.
src/hb-ot-layout-private.hh
src/hb-ot-layout.cc
src/hb-ot-shape-complex-arabic-fallback.hh