summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBehdad Esfahbod <behdad@behdad.org>2010-04-29 03:39:39 -0400
committerBehdad Esfahbod <behdad@behdad.org>2010-04-29 03:39:39 -0400
commit4c5fbae011a33b9efef5aedd61c357fc0ded1113 (patch)
treef4cd593fa8457053026a4e4fe7418d07bd845ab9
parentce23c9234b87513d6460fb89bad178fb8537e161 (diff)
Make sure mirroring is done in original direction
Reported by Jonathan Kew.
-rw-r--r--src/hb-shape.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/hb-shape.c b/src/hb-shape.c
index 2754dac..2e4f3f6 100644
--- a/src/hb-shape.c
+++ b/src/hb-shape.c
@@ -229,10 +229,13 @@ hb_shape (hb_font_t *font,
hb_bool_t substitute_fallback, position_fallback;
hb_form_clusters (buffer);
- original_direction = hb_ensure_native_direction (buffer);
hb_substitute_default (font, face, buffer, features, num_features);
+ /* We do this after substitute_default because mirroring needs to
+ * see the original direction. */
+ original_direction = hb_ensure_native_direction (buffer);
+
substitute_fallback = !hb_substitute_complex (font, face, buffer, features, num_features);
if (substitute_fallback)