Title: [109387] branches/chromium/963
Revision
109387
Author
[email protected]
Date
2012-03-01 12:13:53 -0800 (Thu, 01 Mar 2012)

Log Message

Merge 108372
BUG=114219
Review URL: https://chromiumcodereview.appspot.com/9567020

Modified Paths

Added Paths

Diff

Copied: branches/chromium/963/LayoutTests/fast/table/table-section-node-at-point-crash-expected.txt (from rev 108372, trunk/LayoutTests/fast/table/table-section-node-at-point-crash-expected.txt) (0 => 109387)


--- branches/chromium/963/LayoutTests/fast/table/table-section-node-at-point-crash-expected.txt	                        (rev 0)
+++ branches/chromium/963/LayoutTests/fast/table/table-section-node-at-point-crash-expected.txt	2012-03-01 20:13:53 UTC (rev 109387)
@@ -0,0 +1,2 @@
+Test passes if it does not crash.
+

Copied: branches/chromium/963/LayoutTests/fast/table/table-section-node-at-point-crash.html (from rev 108372, trunk/LayoutTests/fast/table/table-section-node-at-point-crash.html) (0 => 109387)


--- branches/chromium/963/LayoutTests/fast/table/table-section-node-at-point-crash.html	                        (rev 0)
+++ branches/chromium/963/LayoutTests/fast/table/table-section-node-at-point-crash.html	2012-03-01 20:13:53 UTC (rev 109387)
@@ -0,0 +1,49 @@
+<!DOCTYPE html>
+<html>
+<body>
+Test passes if it does not crash.
+<style>
+#test1 {
+    display: table-cell;
+    content: counter(c);
+    counter-reset: c;
+    width: 1000px;
+    height: 1000px;
+}
+#test1::after {
+    content: counter(c);
+    counter-reset: c;
+}
+#test2 {
+    -webkit-flow-into: a;
+}
+#test2::before {
+    content: counter(c);
+    counter-reset: c;
+}
+</style>
+<script>
+if (window.layoutTestController) {
+    layoutTestController.dumpAsText();
+    layoutTestController.waitUntilDone();
+}
+
+function crash() {
+    test1 = document.createElement('div');
+    test1.setAttribute('id', 'test1');
+    document.body.appendChild(test1);
+    test2 = document.createElement('div'); 
+    test2.setAttribute('id', 'test2');
+    test1.appendChild(test2);
+    document.body.offsetTop;
+    document.body.style.zoom = 2;
+	if (window.layoutTestController) {
+	    GCController.collect();
+        eventSender.mouseMoveTo(500, 500);
+        layoutTestController.notifyDone();
+	}
+}
+window._onload_ = crash;
+</script>
+</body>
+</html>
\ No newline at end of file

Modified: branches/chromium/963/Source/WebCore/rendering/RenderTableSection.cpp (109386 => 109387)


--- branches/chromium/963/Source/WebCore/rendering/RenderTableSection.cpp	2012-03-01 20:04:09 UTC (rev 109386)
+++ branches/chromium/963/Source/WebCore/rendering/RenderTableSection.cpp	2012-03-01 20:13:53 UTC (rev 109387)
@@ -1250,6 +1250,9 @@
     }
 
     LayoutUnit offsetInColumnDirection = style()->isHorizontalWritingMode() ? location.y() : location.x();
+    
+    recalcCellsIfNeeded();
+
     // Find the first row that starts after offsetInColumnDirection.
     unsigned nextRow = std::upper_bound(m_rowPos.begin(), m_rowPos.end(), offsetInColumnDirection) - m_rowPos.begin();
     if (nextRow == m_rowPos.size())
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to