Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge r245158 - Do not mix inline and block level boxes.
https://bugs.webkit.org/show_bug.cgi?id=197462 <rdar://problem/50369362> Reviewed by Antti Koivisto. Source/WebCore: This patch tightens the remove-anonymous-wrappers logic by checking if the removal would produce an inline-block sibling mix. When a block level box is removed from the tree, we check if after the removal the anonymous sibling block boxes are still needed or whether we can removed them as well (and have only inline level child boxes). In addition to checking if the container is anonymous and is part of a continuation, we also need to check if collapsing it (and by that moving its children one level up) would cause a inline-block box mix. Test: fast/ruby/continuation-and-column-spanner-crash.html * rendering/updating/RenderTreeBuilder.cpp: (WebCore::RenderTreeBuilder::removeAnonymousWrappersForInlineChildrenIfNeeded): * rendering/updating/RenderTreeBuilderContinuation.cpp: (WebCore::RenderTreeBuilder::Continuation::cleanupOnDestroy): LayoutTests: * fast/ruby/continuation-and-column-spanner-crash-expected.txt: Added. * fast/ruby/continuation-and-column-spanner-crash.html: Added.
- Loading branch information
1 parent
36298f1
commit 7e0c908
Showing
6 changed files
with
70 additions
and
9 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
2 changes: 2 additions & 0 deletions
2
LayoutTests/fast/ruby/continuation-and-column-spanner-crash-expected.txt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
PASS if no crash or assert. | ||
|
10 changes: 10 additions & 0 deletions
10
LayoutTests/fast/ruby/continuation-and-column-spanner-crash.html
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
PASS if no crash or assert. | ||
<ruby><rtc><span><details open="false"><span id=span2></span></details></span><div id=div3></div></rtc><rt id=rt2></rt></ruby><script> | ||
document.body.offsetHeight; | ||
rt2.remove(); | ||
span2.remove(); | ||
document.body.offsetHeight; | ||
div3.style.cssText = "column-span: all"; | ||
if (window.testRunner) | ||
testRunner.dumpAsText(); | ||
</script> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters