Title: [195198] releases/WebKitGTK/webkit-2.10
- Revision
- 195198
- Author
- [email protected]
- Date
- 2016-01-18 03:43:15 -0800 (Mon, 18 Jan 2016)
Log Message
Merge r194426 - Should never be reached failure in WebCore::RenderElement::clearLayoutRootIfNeeded
https://bugs.webkit.org/show_bug.cgi?id=151590
Reviewed by Simon Fraser.
We should always set the layoutroot when a new subtree layout is requested (and convert it
to a full layout when needed). It ensures that renderers are detached cleanly even when
they are set as layoutroot.
Source/WebCore:
Test: fast/block/assert-when-layout-root-is-not-cleared.html
* page/FrameView.cpp:
(WebCore::FrameView::scheduleRelayoutOfSubtree):
LayoutTests:
* fast/block/assert-when-layout-root-is-not-cleared-expected.txt: Added.
* fast/block/assert-when-layout-root-is-not-cleared.html: Added.
Modified Paths
Added Paths
Diff
Modified: releases/WebKitGTK/webkit-2.10/LayoutTests/ChangeLog (195197 => 195198)
--- releases/WebKitGTK/webkit-2.10/LayoutTests/ChangeLog 2016-01-18 11:41:34 UTC (rev 195197)
+++ releases/WebKitGTK/webkit-2.10/LayoutTests/ChangeLog 2016-01-18 11:43:15 UTC (rev 195198)
@@ -1,3 +1,17 @@
+2015-12-27 Zalan Bujtas <[email protected]>
+
+ Should never be reached failure in WebCore::RenderElement::clearLayoutRootIfNeeded
+ https://bugs.webkit.org/show_bug.cgi?id=151590
+
+ Reviewed by Simon Fraser.
+
+ We should always set the layoutroot when a new subtree layout is requested (and convert it
+ to a full layout when needed). It ensures that renderers are detached cleanly even when
+ they are set as layoutroot.
+
+ * fast/block/assert-when-layout-root-is-not-cleared-expected.txt: Added.
+ * fast/block/assert-when-layout-root-is-not-cleared.html: Added.
+
2015-12-24 Zalan Bujtas <[email protected]>
ASSERTION FAILED: x2 >= x1 in WebCore::RenderElement::drawLineForBoxSide
Added: releases/WebKitGTK/webkit-2.10/LayoutTests/fast/block/assert-when-layout-root-is-not-cleared-expected.txt (0 => 195198)
--- releases/WebKitGTK/webkit-2.10/LayoutTests/fast/block/assert-when-layout-root-is-not-cleared-expected.txt (rev 0)
+++ releases/WebKitGTK/webkit-2.10/LayoutTests/fast/block/assert-when-layout-root-is-not-cleared-expected.txt 2016-01-18 11:43:15 UTC (rev 195198)
@@ -0,0 +1,2 @@
+Pass if no assert in debug.
+foo
Added: releases/WebKitGTK/webkit-2.10/LayoutTests/fast/block/assert-when-layout-root-is-not-cleared.html (0 => 195198)
--- releases/WebKitGTK/webkit-2.10/LayoutTests/fast/block/assert-when-layout-root-is-not-cleared.html (rev 0)
+++ releases/WebKitGTK/webkit-2.10/LayoutTests/fast/block/assert-when-layout-root-is-not-cleared.html 2016-01-18 11:43:15 UTC (rev 195198)
@@ -0,0 +1,19 @@
+<html>
+<head>
+<script>
+if (window.testRunner)
+ testRunner.dumpAsText();
+window._onload_ = function() {
+ document.designMode = 'on';
+ document.execCommand('selectAll');
+ document.execCommand('indent');
+}
+</script>
+<style>
+* {
+ -webkit-appearance: checkbox;
+}
+</style>
+</head>
+<body>Pass if no assert in debug.<div>foo</div></body>
+</html>
Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/ChangeLog (195197 => 195198)
--- releases/WebKitGTK/webkit-2.10/Source/WebCore/ChangeLog 2016-01-18 11:41:34 UTC (rev 195197)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/ChangeLog 2016-01-18 11:43:15 UTC (rev 195198)
@@ -1,3 +1,19 @@
+2015-12-27 Zalan Bujtas <[email protected]>
+
+ Should never be reached failure in WebCore::RenderElement::clearLayoutRootIfNeeded
+ https://bugs.webkit.org/show_bug.cgi?id=151590
+
+ Reviewed by Simon Fraser.
+
+ We should always set the layoutroot when a new subtree layout is requested (and convert it
+ to a full layout when needed). It ensures that renderers are detached cleanly even when
+ they are set as layoutroot.
+
+ Test: fast/block/assert-when-layout-root-is-not-cleared.html
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::scheduleRelayoutOfSubtree):
+
2015-12-24 Zalan Bujtas <[email protected]>
ASSERTION FAILED: x2 >= x1 in WebCore::RenderElement::drawLineForBoxSide
Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/page/FrameView.cpp (195197 => 195198)
--- releases/WebKitGTK/webkit-2.10/Source/WebCore/page/FrameView.cpp 2016-01-18 11:41:34 UTC (rev 195197)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/page/FrameView.cpp 2016-01-18 11:43:15 UTC (rev 195198)
@@ -2625,7 +2625,8 @@
ASSERT(frame().view() == this);
if (renderView.needsLayout()) {
- newRelayoutRoot.markContainingBlocksForLayout(ScheduleRelayout::No);
+ m_layoutRoot = &newRelayoutRoot;
+ convertSubtreeLayoutToFullLayout();
return;
}
@@ -2666,8 +2667,8 @@
}
// Just do a full relayout.
+ m_layoutRoot = &newRelayoutRoot;
convertSubtreeLayoutToFullLayout();
- newRelayoutRoot.markContainingBlocksForLayout(ScheduleRelayout::No);
InspectorInstrumentation::didInvalidateLayout(frame());
}
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes