Chromium Code Reviews| Index: Source/core/rendering/RenderBlockLineLayout.cpp |
| diff --git a/Source/core/rendering/RenderBlockLineLayout.cpp b/Source/core/rendering/RenderBlockLineLayout.cpp |
| index 7e2b2528cdb5817b28f9b5a87ba97b171a76296c..b7b5d0d58928afe095dac3d9b07b3f038f3c5c41 100644 |
| --- a/Source/core/rendering/RenderBlockLineLayout.cpp |
| +++ b/Source/core/rendering/RenderBlockLineLayout.cpp |
| @@ -2971,11 +2971,15 @@ inline bool BreakingContext::handleText(WordMeasurements& wordMeasurements, bool |
| if (m_renderTextInfo.m_text != renderText) { |
| m_renderTextInfo.m_text = renderText; |
| m_renderTextInfo.m_font = &font; |
| - m_renderTextInfo.m_layout = font.createLayout(renderText, m_width.currentWidth(), m_collapseWhiteSpace); |
| +#if OS(MACOSX) |
| + m_renderTextInfo.m_layout = font.createLayout(RenderBlockFlow::constructTextRun(renderText, font, renderText, renderText->style()), renderText->textLength(), m_width.currentWidth(), m_collapseWhiteSpace); |
|
eae
2013/11/12 16:03:22
This looks almost identical to the non-mac code be
|
| +#else |
| + m_renderTextInfo.m_layout = nullptr; |
| +#endif |
| m_renderTextInfo.m_lineBreakIterator.resetStringAndReleaseIterator(renderText->text(), style->locale()); |
| } else if (m_renderTextInfo.m_layout && m_renderTextInfo.m_font != &font) { |
| m_renderTextInfo.m_font = &font; |
| - m_renderTextInfo.m_layout = font.createLayout(renderText, m_width.currentWidth(), m_collapseWhiteSpace); |
| + m_renderTextInfo.m_layout = font.createLayout(RenderBlockFlow::constructTextRun(renderText, font, renderText, renderText->style()), renderText->textLength(), m_width.currentWidth(), m_collapseWhiteSpace); |
| } |
| TextLayout* textLayout = m_renderTextInfo.m_layout.get(); |