From: Behdad Esfahbod Date: Sat, 16 May 2009 00:11:10 +0000 (-0400) Subject: [GSUB] Add GSUB::substitute_lookup() X-Git-Tag: 1.25.1~238 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=75778ef4af51ce974fc9af25063f7bb239563b5a;p=platform%2Fupstream%2Fpango.git [GSUB] Add GSUB::substitute_lookup() --- diff --git a/pango/opentype/hb-ot-layout-gsub-private.h b/pango/opentype/hb-ot-layout-gsub-private.h index 2bf1e9f..3980c6c 100644 --- a/pango/opentype/hb-ot-layout-gsub-private.h +++ b/pango/opentype/hb-ot-layout-gsub-private.h @@ -692,6 +692,7 @@ struct ContextSubstFormat1 { }; ASSERT_SIZE (ContextSubstFormat1, 6); + struct SubClassRule { /* TODO */ @@ -1177,6 +1178,12 @@ struct GSUB : GSUBGPOS { return *(SubstLookup*)&(((GSUBGPOS *)this)->get_lookup (i)); } + inline bool substitute_lookup (hb_ot_layout_t *layout, + hb_buffer_t *buffer, + unsigned int lookup_index, + hb_ot_layout_feature_mask_t mask) const { + return get_lookup (lookup_index).substitute_string (layout, buffer, mask); + } }; DEFINE_NULL_ALIAS (GSUB, GSUBGPOS); diff --git a/pango/opentype/hb-ot-layout.cc b/pango/opentype/hb-ot-layout.cc index 0cbc1bf..1d696c7 100644 --- a/pango/opentype/hb-ot-layout.cc +++ b/pango/opentype/hb-ot-layout.cc @@ -529,10 +529,7 @@ hb_ot_layout_substitute_lookup (hb_ot_layout_t *layout, unsigned int lookup_index, hb_ot_layout_feature_mask_t mask) { - const GSUB &gsub = *(layout->gsub); - const SubstLookup &l = gsub.get_lookup (lookup_index); - - return l.substitute_string (layout, buffer, mask); + return layout->gsub->substitute_lookup (layout, buffer, lookup_index, mask); }