Title: [167720] trunk/Source/WebCore
Revision
167720
Author
hy...@apple.com
Date
2014-04-23 13:01:01 -0700 (Wed, 23 Apr 2014)

Log Message

[New Multicolumn] Assertion failure in huge-column-count.html
https://bugs.webkit.org/show_bug.cgi?id=132071

Reviewed by Dean Jackson.

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::regionAtBlockOffset):
Remove the code that returned 0 here, since we're going to patch a lower-level
function to catch all cases.

* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::getRegionRangeForBox):
Don't allow in-flow RenderFlowThreads to ever have a region range. The sets
are what should have ranges... the flow thread needs to just be ignored.

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (167719 => 167720)


--- trunk/Source/WebCore/ChangeLog	2014-04-23 19:38:42 UTC (rev 167719)
+++ trunk/Source/WebCore/ChangeLog	2014-04-23 20:01:01 UTC (rev 167720)
@@ -1,5 +1,22 @@
 2014-04-23  David Hyatt  <hy...@apple.com>
 
+        [New Multicolumn] Assertion failure in huge-column-count.html
+        https://bugs.webkit.org/show_bug.cgi?id=132071
+
+        Reviewed by Dean Jackson.
+
+        * rendering/RenderBlock.cpp:
+        (WebCore::RenderBlock::regionAtBlockOffset):
+        Remove the code that returned 0 here, since we're going to patch a lower-level
+        function to catch all cases.
+
+        * rendering/RenderFlowThread.cpp:
+        (WebCore::RenderFlowThread::getRegionRangeForBox):
+        Don't allow in-flow RenderFlowThreads to ever have a region range. The sets
+        are what should have ranges... the flow thread needs to just be ignored.
+
+2014-04-23  David Hyatt  <hy...@apple.com>
+
         [New Multicolumn] Crasher when clearing out a flow thread in multicolumn layout.
         https://bugs.webkit.org/show_bug.cgi?id=132069
 

Modified: trunk/Source/WebCore/rendering/RenderBlock.cpp (167719 => 167720)


--- trunk/Source/WebCore/rendering/RenderBlock.cpp	2014-04-23 19:38:42 UTC (rev 167719)
+++ trunk/Source/WebCore/rendering/RenderBlock.cpp	2014-04-23 20:01:01 UTC (rev 167720)
@@ -4828,9 +4828,6 @@
 
 RenderRegion* RenderBlock::regionAtBlockOffset(LayoutUnit blockOffset) const
 {
-    if (isInFlowRenderFlowThread())
-        return 0;
-
     RenderFlowThread* flowThread = flowThreadContainingBlock();
     if (!flowThread || !flowThread->hasValidRegionInfo())
         return 0;

Modified: trunk/Source/WebCore/rendering/RenderFlowThread.cpp (167719 => 167720)


--- trunk/Source/WebCore/rendering/RenderFlowThread.cpp	2014-04-23 19:38:42 UTC (rev 167719)
+++ trunk/Source/WebCore/rendering/RenderFlowThread.cpp	2014-04-23 20:01:01 UTC (rev 167720)
@@ -760,7 +760,7 @@
     ASSERT(box);
 
     startRegion = endRegion = nullptr;
-    if (!hasValidRegionInfo()) // We clear the ranges when we invalidate the regions.
+    if (!hasValidRegionInfo() || box->isInFlowRenderFlowThread()) // We clear the ranges when we invalidate the regions.
         return false;
 
     if (getRegionRangeForBoxFromCachedInfo(box, startRegion, endRegion))
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to