diff --git a/src/hb-ot-layout.cc b/src/hb-ot-layout.cc index 31451fc40..965a2fb79 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); }