| 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..f24732b7ff3f203bb9a300660c30b6b991ca0ba8 100644
|
| --- a/ui/gfx/render_text_harfbuzz.cc
|
| +++ b/ui/gfx/render_text_harfbuzz.cc
|
| @@ -1012,8 +1012,10 @@ void RenderTextHarfBuzz::DrawVisualText(Canvas* canvas) {
|
| background_is_transparent());
|
| 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();
|
| + SkScalar offset_x = preceding_segment_widths -
|
| + ((glyphs_range.GetMin() != 0)
|
| + ? run.positions[glyphs_range.GetMin()].x()
|
| + : 0);
|
| for (size_t j = 0; j < glyphs_range.length(); ++j) {
|
| positions[j] = run.positions[(glyphs_range.is_reversed()) ?
|
| (glyphs_range.start() - j) :
|
|
|