This website requires JavaScript.
Explore
Help
Sign In
nephele
/
haikuwebkit
Watch
1
Star
0
Fork
You've already forked haikuwebkit
0
Code
Issues
Releases
Activity
haiku
haikuwebkit
/
LayoutTests
/
fast
/
block
/
crash-while-folding-anonymo...
2 lines
1 B
Raw
Permalink
Normal View
History
Unescape
Escape
Folding anonymous blocks should not result in deleting content. https://bugs.webkit.org/show_bug.cgi?id=184339 <rdar://problem/37327428> Reviewed by Antti Koivisto. Source/WebCore: While folding multiple anonymous blocks (moving the children from next sibling over to previous sibling) we should ensure that the block we are about to destroy does not gain new descendants. In case of 4 sibling anonymous blocks (A B C D), while destroying B 1. we move C's children to A and destroy C. 2. While destroying C, we notice B and C as sibling anonymous blocks and we move D's children over to B (even though B is going to be destroyed as we climb back on the stack). In this patch, B is detached from the tree before we start moving renderers around so that a subsequent folding won't find B anymore as a candidate. Test: fast/block/crash-while-folding-anonymous-blocks.html * rendering/updating/RenderTreeBuilderBlock.cpp: (WebCore::RenderTreeBuilder::Block::detach): LayoutTests: * fast/block/crash-when-subtree-is-still-attached-expected.txt: Progressing. This test does not intend to remove "foobar" text at all. * fast/block/crash-while-folding-anonymous-blocks-expected.txt: Added. * fast/block/crash-while-folding-anonymous-blocks.html: Added. Canonical link: https://commits.webkit.org/199896@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@230313 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2018-04-05 21:14:31 +00:00