summaryrefslogtreecommitdiff
path: root/modules/syriac/syriac-fc.c
diff options
context:
space:
mode:
Diffstat (limited to 'modules/syriac/syriac-fc.c')
-rw-r--r--modules/syriac/syriac-fc.c28
1 files changed, 14 insertions, 14 deletions
diff --git a/modules/syriac/syriac-fc.c b/modules/syriac/syriac-fc.c
index b024cb14..be4aff9c 100644
--- a/modules/syriac/syriac-fc.c
+++ b/modules/syriac/syriac-fc.c
@@ -106,20 +106,6 @@ syriac_engine_shape (PangoEngineShape *engine,
if (!face)
return;
- desc.script = analysis->script;
- desc.language = analysis->language;
-
- desc.n_static_gsub_features = G_N_ELEMENTS (gsub_features);
- desc.static_gsub_features = gsub_features;
- desc.n_static_gpos_features = G_N_ELEMENTS (gpos_features);
- desc.static_gpos_features = gpos_features;
-
- /* TODO populate other_features from analysis->extra_attrs */
- desc.n_other_features = 0;
- desc.other_features = NULL;
-
- ruleset = pango_ot_ruleset_get_for (pango_ot_info_get (face), &desc);
-
buffer = pango_ot_buffer_new (fc_font);
pango_ot_buffer_set_rtl (buffer, analysis->level % 2 != 0);
pango_ot_buffer_set_zero_width_marks (buffer, TRUE);
@@ -164,6 +150,20 @@ syriac_engine_shape (PangoEngineShape *engine,
g_free (properties);
+ desc.script = analysis->script;
+ desc.language = analysis->language;
+
+ desc.n_static_gsub_features = G_N_ELEMENTS (gsub_features);
+ desc.static_gsub_features = gsub_features;
+ desc.n_static_gpos_features = G_N_ELEMENTS (gpos_features);
+ desc.static_gpos_features = gpos_features;
+
+ /* TODO populate other_features from analysis->extra_attrs */
+ desc.n_other_features = 0;
+ desc.other_features = NULL;
+
+ ruleset = pango_ot_ruleset_get_for (pango_ot_info_get (face), &desc);
+
pango_ot_ruleset_substitute (ruleset, buffer);
pango_ot_ruleset_position (ruleset, buffer);
pango_ot_buffer_output (buffer, glyphs);