Index: third_party/harfbuzz/src/harfbuzz-shaper.cpp |
=================================================================== |
--- third_party/harfbuzz/src/harfbuzz-shaper.cpp (revision 137555) |
+++ third_party/harfbuzz/src/harfbuzz-shaper.cpp (working copy) |
@@ -1282,16 +1282,13 @@ |
// (int)(positions[i].x_pos >> 6), (int)(positions[i].y_pos >> 6), |
// positions[i].back, positions[i].new_advance); |
- HB_Fixed adjustment = (item->item.bidiLevel % 2) ? -positions[i].x_advance : positions[i].x_advance; |
+ HB_Fixed adjustment = positions[i].x_advance; |
if (!(face->current_flags & HB_ShaperFlag_UseDesignMetrics)) |
adjustment = HB_FIXED_ROUND(adjustment); |
- if (positions[i].new_advance) { |
- advances[i] = adjustment; |
- } else { |
+ if (positions[i].new_advance == 0) |
advances[i] += adjustment; |
- } |
int back = 0; |
HB_FixedPoint *offsets = item->offsets; |
@@ -1354,4 +1351,3 @@ |
shaper_item->glyphIndicesPresent = false; |
return result; |
} |
- |