| 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));
|
| }
|
|
|
|
|