| Index: third_party/WebKit/Source/core/layout/LayoutMultiColumnSet.cpp
|
| diff --git a/third_party/WebKit/Source/core/layout/LayoutMultiColumnSet.cpp b/third_party/WebKit/Source/core/layout/LayoutMultiColumnSet.cpp
|
| index 1539e3fb17c15115155bea3bd9635d8078785f4f..62b86310e1852b64a193eee78d21998a666305f2 100644
|
| --- a/third_party/WebKit/Source/core/layout/LayoutMultiColumnSet.cpp
|
| +++ b/third_party/WebKit/Source/core/layout/LayoutMultiColumnSet.cpp
|
| @@ -88,11 +88,10 @@ LayoutMultiColumnSet::fragmentainerGroupAtVisualPoint(
|
| LayoutUnit LayoutMultiColumnSet::pageLogicalHeightForOffset(
|
| LayoutUnit offsetInFlowThread) const {
|
| const MultiColumnFragmentainerGroup& lastRow = lastFragmentainerGroup();
|
| - if (!lastRow.logicalHeight()) {
|
| + if (!lastRow.logicalHeight() && m_fragmentainerGroups.size() == 1) {
|
| // In the first layout pass of an auto-height multicol container, height
|
| // isn't set. No need to perform the series of complicated dance steps below
|
| // to figure out that we should simply return 0. Bail now.
|
| - ASSERT(m_fragmentainerGroups.size() == 1);
|
| return LayoutUnit();
|
| }
|
| if (offsetInFlowThread >=
|
| @@ -137,8 +136,6 @@ LayoutUnit LayoutMultiColumnSet::pageRemainingLogicalHeightForOffset(
|
| fragmentainerGroupAtFlowThreadOffset(offsetInFlowThread,
|
| pageBoundaryRule);
|
| LayoutUnit pageLogicalHeight = row.logicalHeight();
|
| - // It's not allowed to call this method if the height is unknown.
|
| - DCHECK(pageLogicalHeight);
|
| LayoutUnit pageLogicalBottom =
|
| row.columnLogicalTopForOffset(offsetInFlowThread) + pageLogicalHeight;
|
| LayoutUnit remainingLogicalHeight = pageLogicalBottom - offsetInFlowThread;
|
| @@ -149,12 +146,11 @@ LayoutUnit LayoutMultiColumnSet::pageRemainingLogicalHeightForOffset(
|
| // part of the latter (i.e. one whole column length of remaining space).
|
| remainingLogicalHeight = intMod(remainingLogicalHeight, pageLogicalHeight);
|
| } else if (!remainingLogicalHeight) {
|
| - // When pageBoundaryRule is AssociateWithLatterPage, we should never return
|
| - // 0, because if there's no space left, it means that we should be at a
|
| + // When pageBoundaryRule is AssociateWithLatterPage, we shouldn't just
|
| + // return 0 if there's no space left, because in that case we're at a
|
| // column boundary, in which case we should return the amount of space
|
| - // remaining in the *next* column. But this is not true if the offset is
|
| - // "infinite" (saturated), so allow this to happen in that case.
|
| - ASSERT(offsetInFlowThread.mightBeSaturated());
|
| + // remaining in the *next* column. Note that the page height itself may be
|
| + // 0, though.
|
| remainingLogicalHeight = pageLogicalHeight;
|
| }
|
| return remainingLogicalHeight;
|
|
|