|
|
@ -169,7 +169,7 @@ struct MarkLigPosFormat1_2 |
|
|
|
{ |
|
|
|
{ |
|
|
|
TRACE_SUBSET (this); |
|
|
|
TRACE_SUBSET (this); |
|
|
|
const hb_set_t &glyphset = *c->plan->glyphset_gsub (); |
|
|
|
const hb_set_t &glyphset = *c->plan->glyphset_gsub (); |
|
|
|
const hb_map_t &glyph_map = *c->plan->glyph_map; |
|
|
|
const hb_map_t &glyph_map = c->plan->glyph_map_gsub; |
|
|
|
|
|
|
|
|
|
|
|
auto *out = c->serializer->start_embed (*this); |
|
|
|
auto *out = c->serializer->start_embed (*this); |
|
|
|
if (unlikely (!c->serializer->extend_min (out))) return_trace (false); |
|
|
|
if (unlikely (!c->serializer->extend_min (out))) return_trace (false); |
|
|
@ -202,8 +202,9 @@ struct MarkLigPosFormat1_2 |
|
|
|
|
|
|
|
|
|
|
|
auto new_ligature_coverage = |
|
|
|
auto new_ligature_coverage = |
|
|
|
+ hb_iter (this + ligatureCoverage) |
|
|
|
+ hb_iter (this + ligatureCoverage) |
|
|
|
| hb_filter (glyphset) |
|
|
|
| hb_take ((this + ligatureArray).len) |
|
|
|
| hb_map_retains_sorting (glyph_map) |
|
|
|
| hb_map_retains_sorting (glyph_map) |
|
|
|
|
|
|
|
| hb_filter ([] (hb_codepoint_t glyph) { return glyph != HB_MAP_VALUE_INVALID; }) |
|
|
|
; |
|
|
|
; |
|
|
|
|
|
|
|
|
|
|
|
if (!out->ligatureCoverage.serialize_serialize (c->serializer, new_ligature_coverage)) |
|
|
|
if (!out->ligatureCoverage.serialize_serialize (c->serializer, new_ligature_coverage)) |
|
|
|