diff options
author | Simon Hausmann <simon.hausmann@digia.com> | 2012-09-18 15:53:33 +0200 |
---|---|---|
committer | Simon Hausmann <simon.hausmann@digia.com> | 2012-09-18 15:53:33 +0200 |
commit | 6bbb7fbbac94d0f511a7bd0cbd50854ab643bfb2 (patch) | |
tree | d9c68d1cca0b3e352f1e438561f3e504e641a08f /Source/WebCore/rendering/RenderBlockLineLayout.cpp | |
parent | d0424a769059c84ae20beb3c217812792ea6726b (diff) | |
download | qtwebkit-6bbb7fbbac94d0f511a7bd0cbd50854ab643bfb2.tar.gz |
Imported WebKit commit c7503cef7ecb236730d1309676ab9fc723fd061d (http://svn.webkit.org/repository/webkit/trunk@128886)
New snapshot with various build fixes
Diffstat (limited to 'Source/WebCore/rendering/RenderBlockLineLayout.cpp')
-rwxr-xr-x | Source/WebCore/rendering/RenderBlockLineLayout.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/Source/WebCore/rendering/RenderBlockLineLayout.cpp b/Source/WebCore/rendering/RenderBlockLineLayout.cpp index 6394a6db4..cbcc988aa 100755 --- a/Source/WebCore/rendering/RenderBlockLineLayout.cpp +++ b/Source/WebCore/rendering/RenderBlockLineLayout.cpp @@ -1275,6 +1275,7 @@ void RenderBlock::layoutRunsAndFloats(LineLayoutState& layoutState, bool hasInli RenderBlock::RenderTextInfo::RenderTextInfo() : m_text(0) + , m_font(0) { } @@ -2436,9 +2437,14 @@ InlineIterator RenderBlock::LineBreaker::nextLineBreak(InlineBidiResolver& resol if (renderTextInfo.m_text != t) { t->updateTextIfNeeded(); renderTextInfo.m_text = t; + renderTextInfo.m_font = &f; renderTextInfo.m_layout = f.createLayout(t, width.currentWidth(), collapseWhiteSpace); renderTextInfo.m_lineBreakIterator.reset(t->characters(), t->textLength(), style->locale()); + } else if (renderTextInfo.m_layout && renderTextInfo.m_font != &f) { + renderTextInfo.m_font = &f; + renderTextInfo.m_layout = f.createLayout(t, width.currentWidth(), collapseWhiteSpace); } + TextLayout* textLayout = renderTextInfo.m_layout.get(); for (; current.m_pos < t->textLength(); current.fastIncrementInTextNode()) { |