summaryrefslogtreecommitdiff
path: root/gfx/thebes/gfxGraphiteShaper.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'gfx/thebes/gfxGraphiteShaper.cpp')
-rw-r--r--gfx/thebes/gfxGraphiteShaper.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/gfx/thebes/gfxGraphiteShaper.cpp b/gfx/thebes/gfxGraphiteShaper.cpp
index b24cee0b9..3cfeb265b 100644
--- a/gfx/thebes/gfxGraphiteShaper.cpp
+++ b/gfx/thebes/gfxGraphiteShaper.cpp
@@ -161,9 +161,10 @@ gfxGraphiteShaper::ShapeText(gfxContext *aContext,
size_t numChars = gr_count_unicode_characters(gr_utf16,
aText, aText + aLength,
nullptr);
+ gr_bidirtl grBidi = gr_bidirtl(aShapedText->IsRightToLeft()
+ ? (gr_rtl | gr_nobidi) : gr_nobidi);
gr_segment *seg = gr_make_seg(mGrFont, mGrFace, 0, grFeatures,
- gr_utf16, aText, numChars,
- aShapedText->IsRightToLeft());
+ gr_utf16, aText, numChars, grBidi);
gr_featureval_destroy(grFeatures);