summaryrefslogtreecommitdiff
path: root/Build/source/libs/graphite2/graphite2-src/src/Segment.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/libs/graphite2/graphite2-src/src/Segment.cpp')
-rw-r--r--Build/source/libs/graphite2/graphite2-src/src/Segment.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/Build/source/libs/graphite2/graphite2-src/src/Segment.cpp b/Build/source/libs/graphite2/graphite2-src/src/Segment.cpp
index 966f75784dd..3020bfd36d0 100644
--- a/Build/source/libs/graphite2/graphite2-src/src/Segment.cpp
+++ b/Build/source/libs/graphite2/graphite2-src/src/Segment.cpp
@@ -412,8 +412,9 @@ Position Segment::positionSlots(const Font *font, Slot * iStart, Slot * iEnd, bo
Position currpos(0., 0.);
float clusterMin = 0.;
Rect bbox;
+ bool reorder = (currdir() != isRtl);
- if (currdir() != isRtl)
+ if (reorder)
{
Slot *temp;
reverseSlots();
@@ -443,6 +444,8 @@ Position Segment::positionSlots(const Font *font, Slot * iStart, Slot * iEnd, bo
currpos = s->finalise(this, font, currpos, bbox, 0, clusterMin = currpos.x, isRtl, isFinal);
}
}
+ if (reorder)
+ reverseSlots();
return currpos;
}