Chromium Code Reviews| Index: ui/gfx/render_text_harfbuzz.cc |
| diff --git a/ui/gfx/render_text_harfbuzz.cc b/ui/gfx/render_text_harfbuzz.cc |
| index 7e916ff3ae21142a633c45521e402b3b1b44ebc8..fc457ded77fa18895297015aeb64531f5b499fcd 100644 |
| --- a/ui/gfx/render_text_harfbuzz.cc |
| +++ b/ui/gfx/render_text_harfbuzz.cc |
| @@ -1013,7 +1013,9 @@ void RenderTextHarfBuzz::DrawVisualText(Canvas* canvas) { |
| Range glyphs_range = run.CharRangeToGlyphRange(segment.char_range); |
| scoped_ptr<SkPoint[]> positions(new SkPoint[glyphs_range.length()]); |
| SkScalar offset_x = |
| - preceding_segment_widths - run.positions[glyphs_range.start()].x(); |
| + preceding_segment_widths - |
| + ((glyphs_range.start() != 0) ? run.positions[glyphs_range.start()].x() |
|
msw
2015/02/17 22:28:25
Is this correct for RTL runs (where glyphs_range i
Jun Mukai
2015/02/17 23:10:25
Oops, good catch. Used GetMin()
|
| + : 0); |
| for (size_t j = 0; j < glyphs_range.length(); ++j) { |
| positions[j] = run.positions[(glyphs_range.is_reversed()) ? |
| (glyphs_range.start() - j) : |