| Index: third_party/WebKit/Source/core/layout/LayoutTableSection.cpp
|
| diff --git a/third_party/WebKit/Source/core/layout/LayoutTableSection.cpp b/third_party/WebKit/Source/core/layout/LayoutTableSection.cpp
|
| index 2bde0f0ab436ca7d0be1c675afd42fcd2e7431d8..dd3f6b467f7518de20eaa75fab62538659c74e1e 100644
|
| --- a/third_party/WebKit/Source/core/layout/LayoutTableSection.cpp
|
| +++ b/third_party/WebKit/Source/core/layout/LayoutTableSection.cpp
|
| @@ -48,7 +48,7 @@ static unsigned gMinTableSizeToUseFastPaintPathWithOverflowingCell = 75 * 75;
|
|
|
| static inline void setRowLogicalHeightToRowStyleLogicalHeight(
|
| LayoutTableSection::RowStruct& row) {
|
| - ASSERT(row.rowLayoutObject);
|
| + DCHECK(row.rowLayoutObject);
|
| row.logicalHeight = row.rowLayoutObject->style()->logicalHeight();
|
| }
|
|
|
| @@ -207,7 +207,7 @@ void LayoutTableSection::addChild(LayoutObject* child,
|
| if (beforeChild && beforeChild->parent() != this)
|
| beforeChild = splitAnonymousBoxesAroundChild(beforeChild);
|
|
|
| - ASSERT(!beforeChild || beforeChild->isTableRow());
|
| + DCHECK(!beforeChild || beforeChild->isTableRow());
|
| LayoutTableBoxComponent::addChild(child, beforeChild);
|
| }
|
|
|
| @@ -215,23 +215,23 @@ static inline void checkThatVectorIsDOMOrdered(
|
| const Vector<LayoutTableCell*, 1>& cells) {
|
| #ifndef NDEBUG
|
| // This function should be called on a non-empty vector.
|
| - ASSERT(cells.size() > 0);
|
| + DCHECK_GT(cells.size(), 0u);
|
|
|
| const LayoutTableCell* previousCell = cells[0];
|
| for (size_t i = 1; i < cells.size(); ++i) {
|
| const LayoutTableCell* currentCell = cells[i];
|
| // The check assumes that all cells belong to the same row group.
|
| - ASSERT(previousCell->section() == currentCell->section());
|
| + DCHECK_EQ(previousCell->section(), currentCell->section());
|
|
|
| // 2 overlapping cells can't be on the same row.
|
| - ASSERT(currentCell->row() != previousCell->row());
|
| + DCHECK_NE(currentCell->row(), previousCell->row());
|
|
|
| // Look backwards in the tree for the previousCell's row. If we are
|
| // DOM ordered, we should find it.
|
| const LayoutTableRow* row = currentCell->row();
|
| for (; row && row != previousCell->row(); row = row->previousRow()) {
|
| }
|
| - ASSERT(row == previousCell->row());
|
| + DCHECK_EQ(row, previousCell->row());
|
|
|
| previousCell = currentCell;
|
| }
|
| @@ -290,7 +290,7 @@ void LayoutTableSection::addCell(LayoutTableCell* cell, LayoutTableRow* row) {
|
| for (unsigned r = 0; r < rSpan; r++) {
|
| ensureCols(insertionRow + r, m_cCol + 1);
|
| CellStruct& c = cellAt(insertionRow + r, m_cCol);
|
| - ASSERT(cell);
|
| + DCHECK(cell);
|
| c.cells.push_back(cell);
|
| checkThatVectorIsDOMOrdered(c.cells);
|
| // If cells overlap then we take the slow path for painting.
|
| @@ -544,7 +544,7 @@ unsigned LayoutTableSection::calcRowHeightHavingOnlySpanningCells(
|
| unsigned rowToApplyExtraHeight,
|
| unsigned& extraTableHeightToPropgate,
|
| Vector<int>& rowsCountWithOnlySpanningCells) {
|
| - ASSERT(rowHasOnlySpanningCells(row));
|
| + DCHECK(rowHasOnlySpanningCells(row));
|
|
|
| unsigned totalCols = m_grid[row].row.size();
|
|
|
| @@ -606,7 +606,7 @@ void LayoutTableSection::updateRowsHeightHavingOnlySpanningCells(
|
| struct SpanningRowsHeight& spanningRowsHeight,
|
| unsigned& extraHeightToPropagate,
|
| Vector<int>& rowsCountWithOnlySpanningCells) {
|
| - ASSERT(spanningRowsHeight.rowHeight.size());
|
| + DCHECK(spanningRowsHeight.rowHeight.size());
|
|
|
| int accumulatedPositionIncrease = 0;
|
| const unsigned rowSpan = cell->rowSpan();
|
| @@ -634,7 +634,7 @@ void LayoutTableSection::updateRowsHeightHavingOnlySpanningCells(
|
| // height of rows in rowSpan cell.
|
| void LayoutTableSection::distributeRowSpanHeightToRows(
|
| SpanningLayoutTableCells& rowSpanCells) {
|
| - ASSERT(rowSpanCells.size());
|
| + DCHECK(rowSpanCells.size());
|
|
|
| // 'rowSpanCells' list is already sorted based on the cells rowIndex in
|
| // ascending order
|
| @@ -773,7 +773,7 @@ void LayoutTableSection::distributeRowSpanHeightToRows(
|
| spanningRowsHeight.rowHeight);
|
| }
|
|
|
| - ASSERT(!extraRowSpanningHeight);
|
| + DCHECK(!extraRowSpanningHeight);
|
|
|
| // Getting total changed height in the table
|
| extraHeightToPropagate =
|
| @@ -826,7 +826,7 @@ int LayoutTableSection::calcRowLogicalHeight() {
|
| SetLayoutNeededForbiddenScope layoutForbiddenScope(*this);
|
| #endif
|
|
|
| - ASSERT(!needsLayout());
|
| + DCHECK(!needsLayout());
|
|
|
| LayoutTableCell* cell;
|
|
|
| @@ -936,16 +936,16 @@ int LayoutTableSection::calcRowLogicalHeight() {
|
| if (!rowSpanCells.isEmpty())
|
| distributeRowSpanHeightToRows(rowSpanCells);
|
|
|
| - ASSERT(!needsLayout());
|
| + DCHECK(!needsLayout());
|
|
|
| return m_rowPos[m_grid.size()];
|
| }
|
|
|
| void LayoutTableSection::layout() {
|
| - ASSERT(needsLayout());
|
| + DCHECK(needsLayout());
|
| LayoutAnalyzer::Scope analyzer(*this);
|
| CHECK(!needsCellRecalc());
|
| - ASSERT(!table()->needsSectionRecalc());
|
| + DCHECK(!table()->needsSectionRecalc());
|
|
|
| // addChild may over-grow m_grid but we don't want to throw away the memory
|
| // too early as addChild can be called in a loop (e.g during parsing). Doing
|
| @@ -973,7 +973,7 @@ void LayoutTableSection::layout() {
|
| unsigned endCol = startColumn;
|
| unsigned cspan = cell->colSpan();
|
| while (cspan && endCol < cols) {
|
| - ASSERT(endCol < table()->effectiveColumns().size());
|
| + DCHECK_LT(endCol, table()->effectiveColumns().size());
|
| cspan -= table()->effectiveColumns()[endCol].span;
|
| endCol++;
|
| }
|
| @@ -1024,7 +1024,7 @@ void LayoutTableSection::distributeExtraLogicalHeightToPercentRows(
|
| extraLogicalHeight -= toAdd;
|
| totalPercent -= m_grid[r].logicalHeight.percent();
|
| }
|
| - ASSERT(totalRows >= 1);
|
| + DCHECK_GE(totalRows, 1u);
|
| if (r < totalRows - 1)
|
| rowHeight = m_rowPos[r + 2] - m_rowPos[r + 1];
|
| m_rowPos[r + 1] += totalLogicalHeightAdded;
|
| @@ -1120,7 +1120,7 @@ void LayoutTableSection::layoutRows() {
|
| SetLayoutNeededForbiddenScope layoutForbiddenScope(*this);
|
| #endif
|
|
|
| - ASSERT(!needsLayout());
|
| + DCHECK(!needsLayout());
|
|
|
| LayoutAnalyzer::Scope analyzer(*this);
|
|
|
| @@ -1218,7 +1218,7 @@ void LayoutTableSection::layoutRows() {
|
| rowLayoutObject->computeOverflow();
|
| }
|
|
|
| - ASSERT(!needsLayout());
|
| + DCHECK(!needsLayout());
|
|
|
| setLogicalHeight(LayoutUnit(m_rowPos[totalRows]));
|
|
|
| @@ -1305,11 +1305,13 @@ void LayoutTableSection::computeOverflowFromCells(unsigned totalRows,
|
| }
|
| }
|
|
|
| - ASSERT(hasOverflowingCell == this->hasOverflowingCell());
|
| +#if DCHECK_IS_ON()
|
| + DCHECK_EQ(hasOverflowingCell, this->hasOverflowingCell());
|
| +#endif
|
| }
|
|
|
| bool LayoutTableSection::recalcChildOverflowAfterStyleChange() {
|
| - ASSERT(childNeedsOverflowRecalcAfterStyleChange());
|
| + DCHECK(childNeedsOverflowRecalcAfterStyleChange());
|
| clearChildNeedsOverflowRecalcAfterStyleChange();
|
| unsigned totalRows = m_grid.size();
|
| bool childrenOverflowChanged = false;
|
| @@ -1676,7 +1678,7 @@ CellSpan LayoutTableSection::spannedEffectiveColumns(
|
| }
|
|
|
| void LayoutTableSection::recalcCells() {
|
| - ASSERT(m_needsCellRecalc);
|
| + DCHECK(m_needsCellRecalc);
|
| // We reset the flag here to ensure that |addCell| works. This is safe to do
|
| // as fillRowsWithDefaultStartingAtPosition makes sure we match the table's
|
| // columns representation.
|
| @@ -1742,14 +1744,18 @@ unsigned LayoutTableSection::numEffectiveColumns() const {
|
|
|
| const BorderValue& LayoutTableSection::borderAdjoiningStartCell(
|
| const LayoutTableCell* cell) const {
|
| - ASSERT(cell->isFirstOrLastCellInRow());
|
| +#if DCHECK_IS_ON()
|
| + DCHECK(cell->isFirstOrLastCellInRow());
|
| +#endif
|
| return hasSameDirectionAs(cell) ? style()->borderStart()
|
| : style()->borderEnd();
|
| }
|
|
|
| const BorderValue& LayoutTableSection::borderAdjoiningEndCell(
|
| const LayoutTableCell* cell) const {
|
| - ASSERT(cell->isFirstOrLastCellInRow());
|
| +#if DCHECK_IS_ON()
|
| + DCHECK(cell->isFirstOrLastCellInRow());
|
| +#endif
|
| return hasSameDirectionAs(cell) ? style()->borderEnd()
|
| : style()->borderStart();
|
| }
|
| @@ -1785,14 +1791,14 @@ const LayoutTableCell* LayoutTableSection::originatingCellAt(
|
| }
|
|
|
| void LayoutTableSection::appendEffectiveColumn(unsigned pos) {
|
| - ASSERT(!m_needsCellRecalc);
|
| + DCHECK(!m_needsCellRecalc);
|
|
|
| for (unsigned row = 0; row < m_grid.size(); ++row)
|
| m_grid[row].row.resize(pos + 1);
|
| }
|
|
|
| void LayoutTableSection::splitEffectiveColumn(unsigned pos, unsigned first) {
|
| - ASSERT(!m_needsCellRecalc);
|
| + DCHECK(!m_needsCellRecalc);
|
|
|
| if (m_cCol > pos)
|
| m_cCol++;
|
| @@ -1803,8 +1809,8 @@ void LayoutTableSection::splitEffectiveColumn(unsigned pos, unsigned first) {
|
| if (r[pos].hasCells()) {
|
| r[pos + 1].cells.appendVector(r[pos].cells);
|
| LayoutTableCell* cell = r[pos].primaryCell();
|
| - ASSERT(cell);
|
| - ASSERT(cell->colSpan() >= (r[pos].inColSpan ? 1u : 0));
|
| + DCHECK(cell);
|
| + DCHECK_GE(cell->colSpan(), (r[pos].inColSpan ? 1u : 0));
|
| unsigned colleft = cell->colSpan() - r[pos].inColSpan;
|
| if (first > colleft)
|
| r[pos + 1].inColSpan = 0;
|
| @@ -1992,7 +1998,7 @@ void LayoutTableSection::relayoutCellIfFlexed(LayoutTableCell& cell,
|
| int LayoutTableSection::logicalHeightForRow(
|
| const LayoutTableRow& rowObject) const {
|
| unsigned rowIndex = rowObject.rowIndex();
|
| - DCHECK(rowIndex < m_grid.size());
|
| + DCHECK_LT(rowIndex, m_grid.size());
|
| int logicalHeight = 0;
|
| const Row& row = m_grid[rowIndex].row;
|
| unsigned cols = row.size();
|
|
|