Title: [204908] trunk
- Revision
- 204908
- Author
- [email protected]
- Date
- 2016-08-24 11:33:43 -0700 (Wed, 24 Aug 2016)
Log Message
ASSERTION FAILED: childrenInline() in WebCore::RenderBlockFlow::hasLines
https://bugs.webkit.org/show_bug.cgi?id=139396
<rdar://problem/27704339>
Reviewed by David Hyatt.
Source/WebCore:
RenderBlockFlow::hasLines() should be able to handle the block-children case.
Test: fast/ruby/assert-with-block-rt-child-and-emphasis.html
* rendering/RenderBlock.h:
(WebCore::RenderBlock::hasLines): Deleted.
* rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::hasLines):
* rendering/RenderBlockFlow.h:
LayoutTests:
* fast/ruby/assert-with-block-rt-child-and-emphasis-expected.txt: Added.
* fast/ruby/assert-with-block-rt-child-and-emphasis.html: Added.
Modified Paths
Added Paths
Diff
Modified: trunk/LayoutTests/ChangeLog (204907 => 204908)
--- trunk/LayoutTests/ChangeLog 2016-08-24 18:33:25 UTC (rev 204907)
+++ trunk/LayoutTests/ChangeLog 2016-08-24 18:33:43 UTC (rev 204908)
@@ -1,3 +1,14 @@
+2016-08-24 Zalan Bujtas <[email protected]>
+
+ ASSERTION FAILED: childrenInline() in WebCore::RenderBlockFlow::hasLines
+ https://bugs.webkit.org/show_bug.cgi?id=139396
+ <rdar://problem/27704339>
+
+ Reviewed by David Hyatt.
+
+ * fast/ruby/assert-with-block-rt-child-and-emphasis-expected.txt: Added.
+ * fast/ruby/assert-with-block-rt-child-and-emphasis.html: Added.
+
2016-08-24 Per Arne Vollan <[email protected]>
[Win] http server is not starting.
Added: trunk/LayoutTests/fast/ruby/assert-with-block-rt-child-and-emphasis-expected.txt (0 => 204908)
--- trunk/LayoutTests/fast/ruby/assert-with-block-rt-child-and-emphasis-expected.txt (rev 0)
+++ trunk/LayoutTests/fast/ruby/assert-with-block-rt-child-and-emphasis-expected.txt 2016-08-24 18:33:43 UTC (rev 204908)
@@ -0,0 +1,2 @@
+PASS if no assert in debug
+
Added: trunk/LayoutTests/fast/ruby/assert-with-block-rt-child-and-emphasis.html (0 => 204908)
--- trunk/LayoutTests/fast/ruby/assert-with-block-rt-child-and-emphasis.html (rev 0)
+++ trunk/LayoutTests/fast/ruby/assert-with-block-rt-child-and-emphasis.html 2016-08-24 18:33:43 UTC (rev 204908)
@@ -0,0 +1,18 @@
+<!DOCTYPE html>
+<html>
+<head>
+<title>This tests that we don't assert when rt has a block child with emphasis on.</title>
+<script>
+if (window.testRunner)
+ testRunner.dumpAsText();
+</script>
+<style>
+ruby {
+ text-emphasis-style: filled;
+}
+</style>
+</head>
+<body>
+<ruby>PASS if no assert in debug<rt><div></div></rt></ruby>
+</body>
+</html>
Modified: trunk/Source/WebCore/ChangeLog (204907 => 204908)
--- trunk/Source/WebCore/ChangeLog 2016-08-24 18:33:25 UTC (rev 204907)
+++ trunk/Source/WebCore/ChangeLog 2016-08-24 18:33:43 UTC (rev 204908)
@@ -1,3 +1,21 @@
+2016-08-24 Zalan Bujtas <[email protected]>
+
+ ASSERTION FAILED: childrenInline() in WebCore::RenderBlockFlow::hasLines
+ https://bugs.webkit.org/show_bug.cgi?id=139396
+ <rdar://problem/27704339>
+
+ Reviewed by David Hyatt.
+
+ RenderBlockFlow::hasLines() should be able to handle the block-children case.
+
+ Test: fast/ruby/assert-with-block-rt-child-and-emphasis.html
+
+ * rendering/RenderBlock.h:
+ (WebCore::RenderBlock::hasLines): Deleted.
+ * rendering/RenderBlockFlow.cpp:
+ (WebCore::RenderBlockFlow::hasLines):
+ * rendering/RenderBlockFlow.h:
+
2016-08-24 Carlos Garcia Campos <[email protected]>
Unreviewed. Fix GObject DOM bindings API break after r204624 and r204648.
Modified: trunk/Source/WebCore/rendering/RenderBlock.h (204907 => 204908)
--- trunk/Source/WebCore/rendering/RenderBlock.h 2016-08-24 18:33:25 UTC (rev 204907)
+++ trunk/Source/WebCore/rendering/RenderBlock.h 2016-08-24 18:33:43 UTC (rev 204908)
@@ -417,9 +417,6 @@
bool isSelfCollapsingBlock() const override;
virtual bool childrenPreventSelfCollapsing() const;
- // FIXME-BLOCKFLOW: Remove virtualizaion when all callers have moved to RenderBlockFlow
- virtual bool hasLines() const { return false; }
-
void createFirstLetterRenderer(RenderElement* firstLetterBlock, RenderText* currentTextChild);
void updateFirstLetterStyle(RenderElement* firstLetterBlock, RenderObject* firstLetterContainer);
Modified: trunk/Source/WebCore/rendering/RenderBlockFlow.cpp (204907 => 204908)
--- trunk/Source/WebCore/rendering/RenderBlockFlow.cpp 2016-08-24 18:33:25 UTC (rev 204907)
+++ trunk/Source/WebCore/rendering/RenderBlockFlow.cpp 2016-08-24 18:33:43 UTC (rev 204908)
@@ -3597,7 +3597,8 @@
bool RenderBlockFlow::hasLines() const
{
- ASSERT(childrenInline());
+ if (!childrenInline())
+ return false;
if (auto simpleLineLayout = this->simpleLineLayout())
return simpleLineLayout->lineCount();
Modified: trunk/Source/WebCore/rendering/RenderBlockFlow.h (204907 => 204908)
--- trunk/Source/WebCore/rendering/RenderBlockFlow.h 2016-08-24 18:33:25 UTC (rev 204907)
+++ trunk/Source/WebCore/rendering/RenderBlockFlow.h 2016-08-24 18:33:43 UTC (rev 204908)
@@ -345,7 +345,7 @@
RootInlineBox* firstRootBox() const { return downcast<RootInlineBox>(m_lineBoxes.firstLineBox()); }
RootInlineBox* lastRootBox() const { return downcast<RootInlineBox>(m_lineBoxes.lastLineBox()); }
- bool hasLines() const final;
+ bool hasLines() const;
void invalidateLineLayoutPath() final;
enum LineLayoutPath { UndeterminedPath = 0, SimpleLinesPath, LineBoxesPath, ForceLineBoxesPath };
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes