pull/407/head
Behdad Esfahbod 8 years ago
parent 7a860f656e
commit a11d9a0466
  1. 6
      src/hb-ot-font.cc
  2. 8
      src/hb-ot-hmtx-table.hh

@ -50,7 +50,7 @@ struct hb_ot_face_metrics_accelerator_t
unsigned short line_gap; unsigned short line_gap;
bool has_font_extents; bool has_font_extents;
const OT::_mtx *table; const OT::hmtxvmtx *table;
hb_blob_t *blob; hb_blob_t *blob;
inline void init (hb_face_t *face, inline void init (hb_face_t *face,
@ -91,7 +91,7 @@ struct hb_ot_face_metrics_accelerator_t
this->has_font_extents = got_font_extents; this->has_font_extents = got_font_extents;
this->blob = OT::Sanitizer<OT::_mtx>::sanitize (face->reference_table (_mtx_tag)); this->blob = OT::Sanitizer<OT::hmtxvmtx>::sanitize (face->reference_table (_mtx_tag));
/* Cap num_metrics() and num_advances() based on table length. */ /* Cap num_metrics() and num_advances() based on table length. */
unsigned int len = hb_blob_get_length (this->blob); unsigned int len = hb_blob_get_length (this->blob);
@ -107,7 +107,7 @@ struct hb_ot_face_metrics_accelerator_t
hb_blob_destroy (this->blob); hb_blob_destroy (this->blob);
this->blob = hb_blob_get_empty (); this->blob = hb_blob_get_empty ();
} }
this->table = OT::Sanitizer<OT::_mtx>::lock_instance (this->blob); this->table = OT::Sanitizer<OT::hmtxvmtx>::lock_instance (this->blob);
} }
inline void fini (void) inline void fini (void)

@ -50,10 +50,8 @@ struct LongMetric
DEFINE_SIZE_STATIC (4); DEFINE_SIZE_STATIC (4);
}; };
struct _mtx struct hmtxvmtx
{ {
static const hb_tag_t tableTag = HB_TAG('_','m','t','x');
static const hb_tag_t hmtxTag = HB_OT_TAG_hmtx; static const hb_tag_t hmtxTag = HB_OT_TAG_hmtx;
static const hb_tag_t vmtxTag = HB_OT_TAG_vmtx; static const hb_tag_t vmtxTag = HB_OT_TAG_vmtx;
@ -91,10 +89,10 @@ struct _mtx
DEFINE_SIZE_ARRAY2 (0, longMetric, leadingBearingX); DEFINE_SIZE_ARRAY2 (0, longMetric, leadingBearingX);
}; };
struct hmtx : _mtx { struct hmtx : hmtxvmtx {
static const hb_tag_t tableTag = HB_OT_TAG_hmtx; static const hb_tag_t tableTag = HB_OT_TAG_hmtx;
}; };
struct vmtx : _mtx { struct vmtx : hmtxvmtx {
static const hb_tag_t tableTag = HB_OT_TAG_vmtx; static const hb_tag_t tableTag = HB_OT_TAG_vmtx;
}; };

Loading…
Cancel
Save