Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(286)

Unified Diff: Source/WebCore/rendering/RenderTableSection.cpp

Issue 9214019: Merge 105685 - Crash in WebCore::RenderTableSection::rowLogicalHeightChanged (Closed) Base URL: http://svn.webkit.org/repository/webkit/branches/chromium/963/
Patch Set: Created 8 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « LayoutTests/fast/table/crash-section-logical-height-changed-needsCellRecalc-expected.txt ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/WebCore/rendering/RenderTableSection.cpp
===================================================================
--- Source/WebCore/rendering/RenderTableSection.cpp (revision 105791)
+++ Source/WebCore/rendering/RenderTableSection.cpp (working copy)
@@ -1155,6 +1155,22 @@
setNeedsLayout(true);
}
+// FIXME: This function could be made O(1) in certain cases (like for the non-most-constrainive cells' case).
+void RenderTableSection::rowLogicalHeightChanged(unsigned rowIndex)
+{
+ if (needsCellRecalc())
+ return;
+
+ setRowLogicalHeightToRowStyleLogicalHeightIfNotRelative(m_grid[rowIndex]);
+
+ for (RenderObject* cell = m_grid[rowIndex].rowRenderer->firstChild(); cell; cell = cell->nextSibling()) {
+ if (!cell->isTableCell())
+ continue;
+
+ updateLogicalHeightForCell(m_grid[rowIndex], toRenderTableCell(cell));
+ }
+}
+
void RenderTableSection::setNeedsCellRecalc()
{
m_needsCellRecalc = true;
« no previous file with comments | « LayoutTests/fast/table/crash-section-logical-height-changed-needsCellRecalc-expected.txt ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698