| 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 a8f3d7752261439945f7837105e2a34c4ed9fcd0..eff7bfb0d24318c606a1906c2b8299f4069c5dc6 100644
|
| --- a/third_party/WebKit/Source/core/layout/LayoutTableSection.cpp
|
| +++ b/third_party/WebKit/Source/core/layout/LayoutTableSection.cpp
|
| @@ -789,25 +789,21 @@ int LayoutTableSection::calcRowLogicalHeight()
|
|
|
| rowSpanCells.append(cell);
|
| lastRowSpanCell = cell;
|
| -
|
| - // Find out the baseline. The baseline is set on the first row in a rowSpan.
|
| - updateBaselineForCell(cell, r, baselineDescent);
|
| }
|
| - continue;
|
| }
|
|
|
| - ASSERT(cell->rowSpan() == 1);
|
| -
|
| - if (cell->hasOverrideLogicalContentHeight()) {
|
| + if (cell->rowIndex() == r && cell->hasOverrideLogicalContentHeight()) {
|
| cell->clearIntrinsicPadding();
|
| cell->clearOverrideSize();
|
| cell->forceChildLayout();
|
| }
|
|
|
| - m_rowPos[r + 1] = std::max(m_rowPos[r + 1], m_rowPos[r] + cell->logicalHeightForRowSizing());
|
| + if (cell->rowSpan() == 1)
|
| + m_rowPos[r + 1] = std::max(m_rowPos[r + 1], m_rowPos[r] + cell->logicalHeightForRowSizing());
|
|
|
| - // Find out the baseline.
|
| - updateBaselineForCell(cell, r, baselineDescent);
|
| + // Find out the baseline. The baseline is set on the first row in a rowSpan.
|
| + if (cell->rowIndex() == r)
|
| + updateBaselineForCell(cell, r, baselineDescent);
|
| }
|
| }
|
|
|
|
|