diff --git a/src/hb-subset-cff2.cc b/src/hb-subset-cff2.cc index e1ae287c4..bafd79d83 100644 --- a/src/hb-subset-cff2.cc +++ b/src/hb-subset-cff2.cc @@ -312,7 +312,8 @@ static inline bool _write_cff2 (const cff2_subset_plan &plan, assert (cff2->topDict + plan.offsets.topDictSize == c.head - c.start); CFF2Subrs *dest = c.start_embed (); if (unlikely (dest == nullptr)) return false; - if (unlikely (!((Index*)dest)->serialize (&c, *acc.globalSubrs))) + Index *super = dest; + if (unlikely (!super->serialize (&c, *acc.globalSubrs))) { DEBUG_MSG (SUBSET, nullptr, "failed to serialize CFF2 global subrs"); return false; @@ -408,7 +409,8 @@ static inline bool _write_cff2 (const cff2_subset_plan &plan, DEBUG_MSG (SUBSET, nullptr, "CFF2 subset: local subrs unexpectedly null [%d]", i); return false; } - if (unlikely (!((Index*)subrs)->serialize (&c, *acc.privateDicts[i].localSubrs))) + Index *super = subrs; + if (unlikely (!super->serialize (&c, *acc.privateDicts[i].localSubrs))) { DEBUG_MSG (SUBSET, nullptr, "failed to serialize CFF2 local subrs [%d]", i); return false;