-
inferno@chromium.org authored
base with another ruby base having inline children. https://bugs.webkit.org/show_bug.cgi?id=66124 Reviewed by Dan Bernstein. Test: fast/ruby/ruby-base-merge-block-children-crash.html * rendering/RenderRubyBase.cpp: (WebCore::RenderRubyBase::moveInlineChildren): add a firstChild() check to prevent empty anonymous block addition, just like moveBlockChildren method. * rendering/RenderRubyBase.cpp: (WebCore::RenderRubyBase::moveBlockChildren): This was incorrectly doing optimizations to see if current ruby base has only inline children before beforeChild and then trying to take out them from their parent anonymous blocks. The problem is those inlines could be split and have continuations because of encountering a block inside inline flow. In those cases, we cannot take the inline out. So, we should just make children non-inline in the destination block and transfer the children as it-is. * rendering/RenderRubyBase.h: remove unncessary functions. LayoutTests: Issues with merging block children of a ruby base with another ruby base having inline children. https://bugs.webkit.org/show_bug.cgi?id=66124 Reviewed by Dan Bernstein. * fast/ruby/ruby-base-merge-block-children-crash.html: Added. * platform/mac/fast/ruby/ruby-base-merge-block-children-crash-expected.txt: Added. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95924 268f45cc-cd09-0410-ab3c-d52691b4dbfc
33287f11