Title: [204860] trunk
Revision
204860
Author
[email protected]
Date
2016-08-23 14:47:20 -0700 (Tue, 23 Aug 2016)

Log Message

ASSERTION FAILED: hasOverflowingCell == this->hasOverflowingCell() in WebCore::RenderTableSection::computeOverflowFromCells
https://bugs.webkit.org/show_bug.cgi?id=155702
<rdar://problem/27720731>

Reviewed by David Hyatt.

Source/WebCore:

The simplified layout path for table/section should also clear the slow path flag for visual overflow (since it recomputes
the overflow for the descendant cells).

Test: fast/table/assert-when-visual-overflow-is-cleared.html

* rendering/RenderTableSection.cpp:
(WebCore::RenderTableSection::layout):

LayoutTests:

* fast/table/assert-when-visual-overflow-is-cleared-expected.txt: Added.
* fast/table/assert-when-visual-overflow-is-cleared.html: Added.

Modified Paths

Added Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (204859 => 204860)


--- trunk/LayoutTests/ChangeLog	2016-08-23 21:29:56 UTC (rev 204859)
+++ trunk/LayoutTests/ChangeLog	2016-08-23 21:47:20 UTC (rev 204860)
@@ -1,3 +1,14 @@
+2016-08-23  Zalan Bujtas  <[email protected]>
+
+        ASSERTION FAILED: hasOverflowingCell == this->hasOverflowingCell() in WebCore::RenderTableSection::computeOverflowFromCells
+        https://bugs.webkit.org/show_bug.cgi?id=155702
+        <rdar://problem/27720731>
+
+        Reviewed by David Hyatt.
+
+        * fast/table/assert-when-visual-overflow-is-cleared-expected.txt: Added.
+        * fast/table/assert-when-visual-overflow-is-cleared.html: Added.
+
 2016-08-23  Brady Eidson  <[email protected]>
 
         WK2 Gamepad layout test support.

Added: trunk/LayoutTests/fast/table/assert-when-visual-overflow-is-cleared-expected.txt (0 => 204860)


--- trunk/LayoutTests/fast/table/assert-when-visual-overflow-is-cleared-expected.txt	                        (rev 0)
+++ trunk/LayoutTests/fast/table/assert-when-visual-overflow-is-cleared-expected.txt	2016-08-23 21:47:20 UTC (rev 204860)
@@ -0,0 +1,3 @@
+PASS if no assert in debug.
+a 
+  

Added: trunk/LayoutTests/fast/table/assert-when-visual-overflow-is-cleared.html (0 => 204860)


--- trunk/LayoutTests/fast/table/assert-when-visual-overflow-is-cleared.html	                        (rev 0)
+++ trunk/LayoutTests/fast/table/assert-when-visual-overflow-is-cleared.html	2016-08-23 21:47:20 UTC (rev 204860)
@@ -0,0 +1,29 @@
+<!DOCTYPE html>
+<html>
+<head>
+<title>This tests that table does not assert when child visual overflow is cleared.</title>
+<script>
+if (window.testRunner)
+    testRunner.dumpAsText();
+
+window._onload_ = function() {
+	window.scrollTo(0, document.body.scrollHeight);
+	document.designMode = 'on';
+}
+</script>
+<style>
+pre {
+	margin-top: -1px;
+	position: relative;
+	display: inline-table;
+}
+
+span {
+	position: absolute;
+}
+</style>
+</head>
+<body>
+PASS if no assert in debug.
+<table><tr><th><span><div><pre><a>a<pre><span><details></details></span></pre></a></pre></div></span></tr></th></table>
+</body>
\ No newline at end of file

Modified: trunk/Source/WebCore/ChangeLog (204859 => 204860)


--- trunk/Source/WebCore/ChangeLog	2016-08-23 21:29:56 UTC (rev 204859)
+++ trunk/Source/WebCore/ChangeLog	2016-08-23 21:47:20 UTC (rev 204860)
@@ -1,3 +1,19 @@
+2016-08-23  Zalan Bujtas  <[email protected]>
+
+        ASSERTION FAILED: hasOverflowingCell == this->hasOverflowingCell() in WebCore::RenderTableSection::computeOverflowFromCells
+        https://bugs.webkit.org/show_bug.cgi?id=155702
+        <rdar://problem/27720731>
+
+        Reviewed by David Hyatt.
+
+        The simplified layout path for table/section should also clear the slow path flag for visual overflow (since it recomputes
+        the overflow for the descendant cells). 
+
+        Test: fast/table/assert-when-visual-overflow-is-cleared.html
+
+        * rendering/RenderTableSection.cpp:
+        (WebCore::RenderTableSection::layout):
+
 2016-08-23  Myles C. Maxfield  <[email protected]>
 
         [Cocoa] Reduce uses of CGFonts

Modified: trunk/Source/WebCore/rendering/RenderTableSection.cpp (204859 => 204860)


--- trunk/Source/WebCore/rendering/RenderTableSection.cpp	2016-08-23 21:29:56 UTC (rev 204859)
+++ trunk/Source/WebCore/rendering/RenderTableSection.cpp	2016-08-23 21:47:20 UTC (rev 204860)
@@ -373,6 +373,7 @@
     ASSERT(!needsCellRecalc());
     ASSERT(!table()->needsSectionRecalc());
 
+    m_forceSlowPaintPathWithOverflowingCell = false;
     // 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 it now ensures we have a stable-enough structure.
     m_grid.shrinkToFit();
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to