Index: Source/core/rendering/RenderTableSection.cpp |
diff --git a/Source/core/rendering/RenderTableSection.cpp b/Source/core/rendering/RenderTableSection.cpp |
index 0180cd131718d7fabd1d074ad3c31d9fdf087b87..2a94548a3a4bafb76dd305a469e40c2755daea07 100644 |
--- a/Source/core/rendering/RenderTableSection.cpp |
+++ b/Source/core/rendering/RenderTableSection.cpp |
@@ -642,7 +642,8 @@ int RenderTableSection::calcRowLogicalHeight() |
RenderTableCell* cell; |
- LayoutStateMaintainer statePusher(*this); |
+ // FIXME: This shouldn't use the same constructor as RenderView. |
+ LayoutState state(*this); |
m_rowPos.resize(m_grid.size() + 1); |
@@ -695,11 +696,6 @@ int RenderTableSection::calcRowLogicalHeight() |
ASSERT(cell->rowSpan() == 1); |
if (cell->hasOverrideHeight()) { |
- if (!statePusher.didPush()) { |
- // Technically, we should also push state for the row, but since |
- // rows don't push a coordinate transform, that's not necessary. |
- statePusher.push(*this, locationOffset()); |
- } |
cell->clearIntrinsicPadding(); |
cell->clearOverrideSize(); |
cell->forceChildLayout(); |
@@ -735,7 +731,7 @@ void RenderTableSection::layout() |
// can be called in a loop (e.g during parsing). Doing it now ensures we have a stable-enough structure. |
m_grid.shrinkToFit(); |
- LayoutStateMaintainer statePusher(*this, locationOffset()); |
+ LayoutState state(*this, locationOffset()); |
const Vector<int>& columnPos = table()->columnPositions(); |
@@ -892,7 +888,7 @@ void RenderTableSection::layoutRows() |
int vspacing = table()->vBorderSpacing(); |
unsigned nEffCols = table()->numEffCols(); |
- LayoutStateMaintainer statePusher(*this, locationOffset()); |
+ LayoutState state(*this, locationOffset()); |
for (unsigned r = 0; r < totalRows; r++) { |
// Set the row's x/y position and width/height. |