| Index: ui/gfx/render_text_harfbuzz.cc
 | 
| diff --git a/ui/gfx/render_text_harfbuzz.cc b/ui/gfx/render_text_harfbuzz.cc
 | 
| index 590537ebe63c281f96724e670dc537190cdada03..59e82f82b6614841282196ff035719e3e82d4514 100644
 | 
| --- a/ui/gfx/render_text_harfbuzz.cc
 | 
| +++ b/ui/gfx/render_text_harfbuzz.cc
 | 
| @@ -576,11 +576,11 @@ TextRunHarfBuzz::TextRunHarfBuzz()
 | 
|        font_size(0),
 | 
|        baseline_offset(0),
 | 
|        baseline_type(0),
 | 
| -      font_style(0),
 | 
| +      italic(false),
 | 
| +      weight(gfx::Font::Weight::NORMAL),
 | 
|        strike(false),
 | 
|        diagonal_strike(false),
 | 
| -      underline(false) {
 | 
| -}
 | 
| +      underline(false) {}
 | 
|  
 | 
|  TextRunHarfBuzz::~TextRunHarfBuzz() {}
 | 
|  
 | 
| @@ -1260,17 +1260,17 @@ void RenderTextHarfBuzz::ItemizeTextToRuns(
 | 
|    DCHECK_LE(text.size(), baselines().max());
 | 
|    for (const BreakList<bool>& style : styles())
 | 
|      DCHECK_LE(text.size(), style.max());
 | 
| -  internal::StyleIterator style(empty_colors, baselines(), styles());
 | 
| +  internal::StyleIterator style(empty_colors, baselines(), weights(), styles());
 | 
|  
 | 
|    for (size_t run_break = 0; run_break < text.length();) {
 | 
|      internal::TextRunHarfBuzz* run = new internal::TextRunHarfBuzz;
 | 
|      run->range.set_start(run_break);
 | 
| -    run->font_style = (style.style(BOLD) ? Font::BOLD : 0) |
 | 
| -                      (style.style(ITALIC) ? Font::ITALIC : 0);
 | 
| +    run->italic = style.style(ITALIC);
 | 
|      run->baseline_type = style.baseline();
 | 
|      run->strike = style.style(STRIKE);
 | 
|      run->diagonal_strike = style.style(DIAGONAL_STRIKE);
 | 
|      run->underline = style.style(UNDERLINE);
 | 
| +    run->weight = style.weight();
 | 
|      int32_t script_item_break = 0;
 | 
|      bidi_iterator.GetLogicalRun(run_break, &script_item_break, &run->level);
 | 
|      CHECK_GT(static_cast<size_t>(script_item_break), run_break);
 | 
| @@ -1435,7 +1435,7 @@ void RenderTextHarfBuzz::ShapeRun(const base::string16& text,
 | 
|      FontRenderParamsQuery query;
 | 
|      query.families.push_back(font_name);
 | 
|      query.pixel_size = run->font_size;
 | 
| -    query.style = run->font_style;
 | 
| +    query.style = run->italic ? gfx::Font::ITALIC : 0;
 | 
|      FontRenderParams fallback_render_params = GetFontRenderParams(query, NULL);
 | 
|      if (CompareFamily(text, font, fallback_render_params, run, &best_font,
 | 
|                        &best_render_params, &best_missing_glyphs))
 | 
| @@ -1456,7 +1456,7 @@ bool RenderTextHarfBuzz::ShapeRunWithFont(const base::string16& text,
 | 
|                                            const FontRenderParams& params,
 | 
|                                            internal::TextRunHarfBuzz* run) {
 | 
|    skia::RefPtr<SkTypeface> skia_face =
 | 
| -      internal::CreateSkiaTypeface(font, run->font_style);
 | 
| +      internal::CreateSkiaTypeface(font, run->italic, run->weight);
 | 
|    if (skia_face == NULL)
 | 
|      return false;
 | 
|    run->skia_face = skia_face;
 | 
| 
 |