Title: [173915] releases/WebKitGTK/webkit-2.6
- Revision
- 173915
- Author
- [email protected]
- Date
- 2014-09-24 06:35:09 -0700 (Wed, 24 Sep 2014)
Log Message
Merge r173843 - ASSERT in RenderMultiColumnSet::requiresBalancing.
https://bugs.webkit.org/show_bug.cgi?id=136376.
Reviewed by David Kilzer.
Source/WebCore:
Added fast/multicol/multicol-selection.html.
* rendering/RenderMultiColumnFlowThread.cpp:
(WebCore::isValidColumnSpanner):
Don't allow an object to become a spanner if it does not have the flow
thread as its containing block. Otherwise the flow thread won't get notified
of spanner placeholder insertions, and so the spanner ends up orphaned.
LayoutTests:
* fast/multicol/multicol-selection-expected.txt: Added.
* fast/multicol/multicol-selection.html: Added.
Modified Paths
Added Paths
Diff
Modified: releases/WebKitGTK/webkit-2.6/LayoutTests/ChangeLog (173914 => 173915)
--- releases/WebKitGTK/webkit-2.6/LayoutTests/ChangeLog 2014-09-24 13:33:45 UTC (rev 173914)
+++ releases/WebKitGTK/webkit-2.6/LayoutTests/ChangeLog 2014-09-24 13:35:09 UTC (rev 173915)
@@ -1,3 +1,13 @@
+2014-09-22 David Hyatt <[email protected]>
+
+ ASSERT in RenderMultiColumnSet::requiresBalancing.
+ https://bugs.webkit.org/show_bug.cgi?id=136376.
+
+ Reviewed by David Kilzer.
+
+ * fast/multicol/multicol-selection-expected.txt: Added.
+ * fast/multicol/multicol-selection.html: Added.
+
2014-09-22 Mihnea Ovidenie <[email protected]>
[CSS Regions] Assertion failure and null dereference crash when using animations and regions
Added: releases/WebKitGTK/webkit-2.6/LayoutTests/fast/multicol/multicol-selection-expected.txt (0 => 173915)
--- releases/WebKitGTK/webkit-2.6/LayoutTests/fast/multicol/multicol-selection-expected.txt (rev 0)
+++ releases/WebKitGTK/webkit-2.6/LayoutTests/fast/multicol/multicol-selection-expected.txt 2014-09-24 13:35:09 UTC (rev 173915)
@@ -0,0 +1,2 @@
+This test passes if it doesn't crash.
+
Added: releases/WebKitGTK/webkit-2.6/LayoutTests/fast/multicol/multicol-selection.html (0 => 173915)
--- releases/WebKitGTK/webkit-2.6/LayoutTests/fast/multicol/multicol-selection.html (rev 0)
+++ releases/WebKitGTK/webkit-2.6/LayoutTests/fast/multicol/multicol-selection.html 2014-09-24 13:35:09 UTC (rev 173915)
@@ -0,0 +1,19 @@
+<head>
+<script>
+if (window.testRunner)
+ testRunner.dumpAsText();
+</script>
+</head>
+This test passes if it doesn't crash.
+<style id="style">
+#elm::before, #elm::after { display:block; -webkit-column-span:all; content:".........."; }
+:last-of-type { position: absolute;}
+</style>
+<div id="div" style="visibility:hidden; -webkit-columns:4; columns:4;">
+ <span id="elm"> </span>
+</div>
+<script>
+document.execCommand("SelectAll");
+var elem = document.getElementById("style");
+elem.innerHTML="%a%b3%bf%5c";
+</script>
Modified: releases/WebKitGTK/webkit-2.6/Source/WebCore/ChangeLog (173914 => 173915)
--- releases/WebKitGTK/webkit-2.6/Source/WebCore/ChangeLog 2014-09-24 13:33:45 UTC (rev 173914)
+++ releases/WebKitGTK/webkit-2.6/Source/WebCore/ChangeLog 2014-09-24 13:35:09 UTC (rev 173915)
@@ -1,3 +1,18 @@
+2014-09-22 David Hyatt <[email protected]>
+
+ ASSERT in RenderMultiColumnSet::requiresBalancing.
+ https://bugs.webkit.org/show_bug.cgi?id=136376.
+
+ Reviewed by David Kilzer.
+
+ Added fast/multicol/multicol-selection.html.
+
+ * rendering/RenderMultiColumnFlowThread.cpp:
+ (WebCore::isValidColumnSpanner):
+ Don't allow an object to become a spanner if it does not have the flow
+ thread as its containing block. Otherwise the flow thread won't get notified
+ of spanner placeholder insertions, and so the spanner ends up orphaned.
+
2014-09-22 Eva Balazsfalvi <[email protected]>
REGRESSION(r173631): It broke the !ENABLE(VIDEO) build
Modified: releases/WebKitGTK/webkit-2.6/Source/WebCore/rendering/RenderMultiColumnFlowThread.cpp (173914 => 173915)
--- releases/WebKitGTK/webkit-2.6/Source/WebCore/rendering/RenderMultiColumnFlowThread.cpp 2014-09-24 13:33:45 UTC (rev 173914)
+++ releases/WebKitGTK/webkit-2.6/Source/WebCore/rendering/RenderMultiColumnFlowThread.cpp 2014-09-24 13:35:09 UTC (rev 173915)
@@ -257,6 +257,11 @@
// Needs to be block-level.
return false;
}
+
+ // We need to have the flow thread as the containing block. A spanner cannot break out of the flow thread.
+ RenderFlowThread* enclosingFlowThread = descendant->flowThreadContainingBlock();
+ if (enclosingFlowThread != flowThread)
+ return false;
// This looks like a spanner, but if we're inside something unbreakable, it's not to be treated as one.
for (RenderBox* ancestor = toRenderBox(descendant)->parentBox(); ancestor; ancestor = ancestor->parentBox()) {
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes