Title: [177061] branches/safari-600.1.4.13-branch

Diff

Modified: branches/safari-600.1.4.13-branch/LayoutTests/ChangeLog (177060 => 177061)


--- branches/safari-600.1.4.13-branch/LayoutTests/ChangeLog	2014-12-10 16:48:56 UTC (rev 177060)
+++ branches/safari-600.1.4.13-branch/LayoutTests/ChangeLog	2014-12-10 16:51:02 UTC (rev 177061)
@@ -1,5 +1,19 @@
 2014-12-10  Babak Shafiei  <[email protected]>
 
+        Merge r173843.
+
+    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-12-10  Babak Shafiei  <[email protected]>
+
         Merge r173738.
 
     2014-09-18  Daniel Bates  <[email protected]>

Copied: branches/safari-600.1.4.13-branch/LayoutTests/fast/multicol/multicol-selection-expected.txt (from rev 175519, branches/safari-600.3-branch/LayoutTests/fast/multicol/multicol-selection-expected.txt) (0 => 177061)


--- branches/safari-600.1.4.13-branch/LayoutTests/fast/multicol/multicol-selection-expected.txt	                        (rev 0)
+++ branches/safari-600.1.4.13-branch/LayoutTests/fast/multicol/multicol-selection-expected.txt	2014-12-10 16:51:02 UTC (rev 177061)
@@ -0,0 +1,2 @@
+This test passes if it doesn't crash.
+

Copied: branches/safari-600.1.4.13-branch/LayoutTests/fast/multicol/multicol-selection.html (from rev 175519, branches/safari-600.3-branch/LayoutTests/fast/multicol/multicol-selection.html) (0 => 177061)


--- branches/safari-600.1.4.13-branch/LayoutTests/fast/multicol/multicol-selection.html	                        (rev 0)
+++ branches/safari-600.1.4.13-branch/LayoutTests/fast/multicol/multicol-selection.html	2014-12-10 16:51:02 UTC (rev 177061)
@@ -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">&nbsp;</span>
+</div>
+<script>
+document.execCommand("SelectAll");
+var elem = document.getElementById("style");
+elem.innerHTML="%a%b3%bf%5c";
+</script>

Modified: branches/safari-600.1.4.13-branch/Source/WebCore/ChangeLog (177060 => 177061)


--- branches/safari-600.1.4.13-branch/Source/WebCore/ChangeLog	2014-12-10 16:48:56 UTC (rev 177060)
+++ branches/safari-600.1.4.13-branch/Source/WebCore/ChangeLog	2014-12-10 16:51:02 UTC (rev 177061)
@@ -1,5 +1,24 @@
 2014-12-10  Babak Shafiei  <[email protected]>
 
+        Merge r173843.
+
+    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-12-10  Babak Shafiei  <[email protected]>
+
         Merge r173738.
 
     2014-09-18  Daniel Bates  <[email protected]>

Modified: branches/safari-600.1.4.13-branch/Source/WebCore/rendering/RenderMultiColumnFlowThread.cpp (177060 => 177061)


--- branches/safari-600.1.4.13-branch/Source/WebCore/rendering/RenderMultiColumnFlowThread.cpp	2014-12-10 16:48:56 UTC (rev 177060)
+++ branches/safari-600.1.4.13-branch/Source/WebCore/rendering/RenderMultiColumnFlowThread.cpp	2014-12-10 16:51:02 UTC (rev 177061)
@@ -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

Reply via email to