Index: Source/core/rendering/RenderBlockLineLayout.cpp |
diff --git a/Source/core/rendering/RenderBlockLineLayout.cpp b/Source/core/rendering/RenderBlockLineLayout.cpp |
index 37b1006edeedec7bea834170aa8dc51f0d40fabb..4c7c74c0782f1169557b3d170467eff1937ed395 100644 |
--- a/Source/core/rendering/RenderBlockLineLayout.cpp |
+++ b/Source/core/rendering/RenderBlockLineLayout.cpp |
@@ -418,7 +418,7 @@ static inline void setLogicalWidthForTextRun(RootInlineBox* lineBox, BidiRun* ru |
HashSet<const SimpleFontData*> fallbackFonts; |
GlyphOverflow glyphOverflow; |
- const Font& font = renderer->style(lineInfo.isFirstLine())->font(); |
+ const Font& font = renderer->styleOrFirstLineStyle(lineInfo.isFirstLine())->font(); |
// Always compute glyph overflow if the block's line-box-contain value is "glyphs". |
if (lineBox->fitsToGlyphs()) { |
// If we don't stick out of the root line's font box, then don't bother computing our glyph overflow. This optimization |
@@ -435,7 +435,7 @@ static inline void setLogicalWidthForTextRun(RootInlineBox* lineBox, BidiRun* ru |
LayoutUnit hyphenWidth = 0; |
if (toInlineTextBox(run->m_box)->hasHyphen()) { |
- const Font& font = renderer->style(lineInfo.isFirstLine())->font(); |
+ const Font& font = renderer->styleOrFirstLineStyle(lineInfo.isFirstLine())->font(); |
hyphenWidth = measureHyphenWidth(renderer, font, run->direction()); |
} |
float measuredWidth = 0; |
@@ -655,7 +655,7 @@ BidiRun* RenderBlockFlow::computeInlineDirectionPositionsForSegment(RootInlineBo |
if (rt->textLength()) { |
if (!r->m_start && needsWordSpacing && isSpaceOrNewline(rt->characterAt(r->m_start))) |
- totalLogicalWidth += rt->style(lineInfo.isFirstLine())->font().fontDescription().wordSpacing(); |
+ totalLogicalWidth += rt->styleOrFirstLineStyle(lineInfo.isFirstLine())->font().fontDescription().wordSpacing(); |
needsWordSpacing = !isSpaceOrNewline(rt->characterAt(r->m_stop - 1)); |
} |