diff --git a/src/hb-ot-layout.cc b/src/hb-ot-layout.cc index 31451fc402e46983ca249d2840699977d827ef4b..965a2fb796db48108ce307347cc73b48971cb654 100644 --- a/src/hb-ot-layout.cc +++ b/src/hb-ot-layout.cc @@ -76,19 +76,19 @@ _hb_ot_layout_free (hb_ot_layout_t *layout) static const GDEF& _get_gdef (hb_face_t *face) { - return likely (face->ot_layout->gdef) ? *face->ot_layout->gdef : Null(GDEF); + return likely (face->ot_layout && face->ot_layout->gdef) ? *face->ot_layout->gdef : Null(GDEF); } static const GSUB& _get_gsub (hb_face_t *face) { - return likely (face->ot_layout->gsub) ? *face->ot_layout->gsub : Null(GSUB); + return likely (face->ot_layout && face->ot_layout->gsub) ? *face->ot_layout->gsub : Null(GSUB); } static const GPOS& _get_gpos (hb_face_t *face) { - return likely (face->ot_layout->gpos) ? *face->ot_layout->gpos : Null(GPOS); + return likely (face->ot_layout && face->ot_layout->gpos) ? *face->ot_layout->gpos : Null(GPOS); }