Title: [171105] trunk
- Revision
- 171105
- Author
- an...@apple.com
- Date
- 2014-07-15 07:59:58 -0700 (Tue, 15 Jul 2014)
Log Message
REGRESSION (r155957): Invalid cast in WebCore::RenderNamedFlowThread::getRanges
https://bugs.webkit.org/show_bug.cgi?id=134888
Reviewed by Mihnea Ovidenie.
Source/WebCore:
Test: fast/regions/flowthread-getranges-box-cast.html
* rendering/RenderNamedFlowThread.cpp:
(WebCore::RenderNamedFlowThread::getRanges): Test the type before casting.
LayoutTests:
* fast/regions/flowthread-getranges-box-cast-expected.txt: Added.
* fast/regions/flowthread-getranges-box-cast.html: Added.
Modified Paths
Added Paths
Diff
Modified: trunk/LayoutTests/ChangeLog (171104 => 171105)
--- trunk/LayoutTests/ChangeLog 2014-07-15 10:49:58 UTC (rev 171104)
+++ trunk/LayoutTests/ChangeLog 2014-07-15 14:59:58 UTC (rev 171105)
@@ -1,3 +1,13 @@
+2014-07-15 Antti Koivisto <an...@apple.com>
+
+ REGRESSION (r155957): Invalid cast in WebCore::RenderNamedFlowThread::getRanges
+ https://bugs.webkit.org/show_bug.cgi?id=134888
+
+ Reviewed by Mihnea Ovidenie.
+
+ * fast/regions/flowthread-getranges-box-cast-expected.txt: Added.
+ * fast/regions/flowthread-getranges-box-cast.html: Added.
+
2014-07-14 Zalan Bujtas <za...@apple.com>
Subpixel rendering: Zero sized compositing container's content positioned off by one device pixel.
Added: trunk/LayoutTests/fast/regions/flowthread-getranges-box-cast-expected.txt (0 => 171105)
--- trunk/LayoutTests/fast/regions/flowthread-getranges-box-cast-expected.txt (rev 0)
+++ trunk/LayoutTests/fast/regions/flowthread-getranges-box-cast-expected.txt 2014-07-15 14:59:58 UTC (rev 171105)
@@ -0,0 +1,3 @@
+This test passes if it doesn't crash or assert.
+
+
Added: trunk/LayoutTests/fast/regions/flowthread-getranges-box-cast.html (0 => 171105)
--- trunk/LayoutTests/fast/regions/flowthread-getranges-box-cast.html (rev 0)
+++ trunk/LayoutTests/fast/regions/flowthread-getranges-box-cast.html 2014-07-15 14:59:58 UTC (rev 171105)
@@ -0,0 +1,17 @@
+<script>
+if (window.testRunner)
+ testRunner.dumpAsText();
+</script>
+<style>
+#region1 { -webkit-flow-from: flow1; width: 250px; height: 70px; left: 20px; top: 250px;}
+</style>
+<div>This test passes if it doesn't crash or assert.</div>
+<div><div id="article"><div <script>
+<br>
+</div></div></div>
+<div id="region1"></div>
+<script>
+var article = document.getElementById("article");
+article.style.webkitFlowInto = "flow1";
+range1 = region1.webkitGetRegionFlowRanges();
+</script>
Modified: trunk/Source/WebCore/ChangeLog (171104 => 171105)
--- trunk/Source/WebCore/ChangeLog 2014-07-15 10:49:58 UTC (rev 171104)
+++ trunk/Source/WebCore/ChangeLog 2014-07-15 14:59:58 UTC (rev 171105)
@@ -1,3 +1,15 @@
+2014-07-15 Antti Koivisto <an...@apple.com>
+
+ REGRESSION (r155957): Invalid cast in WebCore::RenderNamedFlowThread::getRanges
+ https://bugs.webkit.org/show_bug.cgi?id=134888
+
+ Reviewed by Mihnea Ovidenie.
+
+ Test: fast/regions/flowthread-getranges-box-cast.html
+
+ * rendering/RenderNamedFlowThread.cpp:
+ (WebCore::RenderNamedFlowThread::getRanges): Test the type before casting.
+
2014-07-15 Carlos Alberto Lopez Perez <clo...@igalia.com>
[GTK] Update GObject DOM bindings symbols file after r171014.
Modified: trunk/Source/WebCore/rendering/RenderNamedFlowThread.cpp (171104 => 171105)
--- trunk/Source/WebCore/rendering/RenderNamedFlowThread.cpp 2014-07-15 10:49:58 UTC (rev 171104)
+++ trunk/Source/WebCore/rendering/RenderNamedFlowThread.cpp 2014-07-15 14:59:58 UTC (rev 171105)
@@ -36,6 +36,7 @@
#include "Range.h"
#include "RenderInline.h"
#include "RenderLayer.h"
+#include "RenderLineBreak.h"
#include "RenderNamedFlowFragment.h"
#include "RenderText.h"
#include "RenderView.h"
@@ -664,11 +665,14 @@
boundingBox = toRenderInline(renderer)->linesBoundingBox();
else if (renderer->isText())
boundingBox = toRenderText(renderer)->linesBoundingBox();
- else {
- boundingBox = toRenderBox(renderer)->frameRect();
+ else if (renderer->isLineBreak())
+ boundingBox = toRenderLineBreak(renderer)->linesBoundingBox();
+ else if (renderer->isBox()) {
+ boundingBox = toRenderBox(renderer)->frameRect();
if (toRenderBox(renderer)->isRelPositioned())
boundingBox.move(toRenderBox(renderer)->relativePositionLogicalOffset());
- }
+ } else
+ continue;
LayoutUnit offsetTop = renderer->containingBlock()->offsetFromLogicalTopOfFirstPage();
const LayoutPoint logicalOffsetFromTop(isHorizontalWritingMode() ? LayoutUnit() : offsetTop,
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes