diff --git a/src/hb-ot-layout.cc b/src/hb-ot-layout.cc index 4653420e2..f68e5206c 100644 --- a/src/hb-ot-layout.cc +++ b/src/hb-ot-layout.cc @@ -1932,11 +1932,10 @@ inline void hb_ot_map_t::apply (const Proxy &proxy, c.set_lookup_mask (lookups[table_index][i].mask); c.set_auto_zwj (lookups[table_index][i].auto_zwj); c.set_auto_zwnj (lookups[table_index][i].auto_zwnj); - if (lookups[table_index][i].random) - { - c.set_random (true); + c.set_random (lookups[table_index][i].random); + if (c.random) buffer->unsafe_to_break_all (); - } + apply_string (&c, proxy.table.get_lookup (lookup_index), proxy.accels[lookup_index]);