summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBehdad Esfahbod <behdad@behdad.org>2014-07-29 10:58:25 -0400
committerBehdad Esfahbod <behdad@behdad.org>2014-07-29 10:58:25 -0400
commit8d4d42e7b34ef625677a7adae020b0e6c7ebc136 (patch)
treecbc42aed6e149a105cad3feefcd20368c9836283
parentcaa226bc36d4d449b89a6eab6c0d24a5bba2658c (diff)
downloadpango-8d4d42e7b34ef625677a7adae020b0e6c7ebc136.tar.gz
[coretext] Reverse glyphs if right-to-left
The shape.c layer is doing this for clumsy backends but warns. Fix properly.
-rw-r--r--modules/basic/basic-coretext.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/modules/basic/basic-coretext.c b/modules/basic/basic-coretext.c
index 0a2c27f8..9e087bab 100644
--- a/modules/basic/basic-coretext.c
+++ b/modules/basic/basic-coretext.c
@@ -29,6 +29,7 @@
#include "pango-utils.h"
#include "pango-fontmap.h"
#include "pangocoretext.h"
+#include "pango-impl-utils.h"
/* No extra fields needed */
typedef PangoEngineShape BasicEngineCoreText;
@@ -489,6 +490,9 @@ basic_engine_shape (PangoEngineShape *engine,
pango_coverage_unref (coverage);
g_slist_foreach (glyph_list, glyph_info_free, NULL);
g_slist_free (glyph_list);
+
+ if (analysis->level & 1)
+ pango_glyph_string_reverse_range (glyphs, 0, glyphs->num_glyphs);
}
static void