Index: third_party/harfbuzz-ng/src/hb-ot-map.cc |
diff --git a/third_party/harfbuzz-ng/src/hb-ot-map.cc b/third_party/harfbuzz-ng/src/hb-ot-map.cc |
index a54e306e8cf61a82963581719a7a5f1da6696fda..bebf3ed74ed61b08d8cecbd68ef8ed56a4b74e8e 100644 |
--- a/third_party/harfbuzz-ng/src/hb-ot-map.cc |
+++ b/third_party/harfbuzz-ng/src/hb-ot-map.cc |
@@ -95,6 +95,21 @@ void hb_ot_map_t::apply (unsigned int table_index, |
apply_lookup_func (face_or_font, buffer, lookups[table_index][i].index, lookups[table_index][i].mask); |
} |
+void hb_ot_map_t::substitute_closure (hb_face_t *face, |
+ hb_set_t *glyphs) const |
+{ |
+ unsigned int table_index = 0; |
+ unsigned int i = 0; |
+ |
+ for (unsigned int pause_index = 0; pause_index < pauses[table_index].len; pause_index++) { |
+ const pause_map_t *pause = &pauses[table_index][pause_index]; |
+ for (; i < pause->num_lookups; i++) |
+ hb_ot_layout_substitute_closure_lookup (face, glyphs, lookups[table_index][i].index); |
+ } |
+ |
+ for (; i < lookups[table_index].len; i++) |
+ hb_ot_layout_substitute_closure_lookup (face, glyphs, lookups[table_index][i].index); |
+} |
void hb_ot_map_builder_t::add_pause (unsigned int table_index, hb_ot_map_t::pause_func_t pause_func, void *user_data) |
{ |