diff --git a/util/options.cc b/util/options.cc index 299466fe6..682e40c4d 100644 --- a/util/options.cc +++ b/util/options.cc @@ -670,16 +670,8 @@ font_options_t::get_font (void) const blob = hb_blob_create_from_file (font_file); } - if (hb_blob_get_length (blob) == 0) - fail (false, "No such file or directory, or is empty"); - - unsigned int face_count = hb_face_count (blob); - - if (face_count == 0) - fail (false, "Not a font file"); // most likely - - if (face_index > face_count) - fail (false, "The requested font index wasn't available in the file"); + if (blob == hb_blob_get_empty ()) + fail (false, "No such file or directory"); /* Create the face */ hb_face_t *face = hb_face_create (blob, face_index); diff --git a/util/options.hh b/util/options.hh index 5287395af..2160d5ec3 100644 --- a/util/options.hh +++ b/util/options.hh @@ -485,7 +485,7 @@ struct font_options_t : option_group_t mutable double font_size_y; char *font_funcs; -private: + private: mutable hb_font_t *font; };