[CSS Shapes] Clear overflowing line's segments in pushShapeContentOverflowBelowTheContentBox
https://bugs.webkit.org/show_bug.cgi?id=118002
Reviewed by David Hyatt.
When the last line in the shape overlaps with the shape bottom boundaries we need to clear the computed segments. (We need to compute
the segments anyway, since shape-outside's code uses the same code path to determine its segments and the line containing is not a
requirement in that case.) Rather then doing the job in RenderBlock::LineBreaker::nextLineBreak I moved the functionality to its correct
place to pushShapeContentOverflowBelowTheContentBox. Now all the overflow related functionality is located in one function. I fixed the
corresponding layout test.
Source/WebCore:
Tests: I modified shape-inside-overflow.html.
* rendering/RenderBlockLineLayout.cpp:
(WebCore::pushShapeContentOverflowBelowTheContentBox): Remove segments if line overlaps with the shape's boundaries.
(WebCore::RenderBlock::LineBreaker::nextLineBreak): Move segments clear logic to pushShapeContentOverflowBelowContentBox.
LayoutTests:
* fast/shapes/shape-inside/shape-inside-overflow-expected.html:
* fast/shapes/shape-inside/shape-inside-overflow.html:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152906 268f45cc-cd09-0410-ab3c-d52691b4dbfc
5 files changed