+ if (ret != 0) {
+ fUnitsPerEM = otm.otmEMSquare;
+ fAscent = otm.otmTextMetrics.tmAscent;
+ fDescent = otm.otmTextMetrics.tmDescent;
+ fLeading = otm.otmTextMetrics.tmExternalLeading;
+ } else {
+ const HEADTable *headTable = NULL;
+ const HHEATable *hheaTable = NULL;
+
+ // read unitsPerEm from 'head' table
+ headTable = (const HEADTable *) readFontTable(LE_HEAD_TABLE_TAG);
+
+ if (headTable == NULL) {
+ status = LE_MISSING_FONT_TABLE_ERROR;
+ goto restore;
+ }