RESOLVED WONTFIX 137958
[EFL] ASSERTION FAILED: !object || !isRuby(object->parent()) || is<RenderRubyRun>(*object) || (object->isInline() && (object->isBeforeContent() || object->isAfterContent())) || (object->isAnonymous() ... in WebCore::isAnonymousRubyInlineBlock
https://bugs.webkit.org/show_bug.cgi?id=137958
Summary [EFL] ASSERTION FAILED: !object || !isRuby(object->parent()) || is<RenderRuby...
Renata Hodovan
Reported 2014-10-22 07:22:50 PDT
Created attachment 240272 [details] Test case The failing test: <!DOCTYPE html> <style> * { display:table-cell; float:right; -webkit-columns:2; } </style> <ruby> <script>a</script>a </ruby> Backtrace: ASSERTION FAILED: !object || !object->parent()->isRuby() || is<RenderRubyRun>(*object) || (object->isInline() && (object->isBeforeContent() || object->isAfterContent())) || (object->isAnonymous() && is<RenderBlock>(*object) && object->style().display() == INLINE_BLOCK) ../../Source/WebCore/rendering/RenderRuby.cpp(51) : bool WebCore::isAnonymousRubyInlineBlock(const WebCore::RenderObject*) Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 0x7fff98c1f700 (LWP 18272)] 0x00007fffedae91b5 in WTFCrash () at ../../Source/WTF/wtf/Assertions.cpp:321 321 *(int *)(uintptr_t)0xbbadbeef = 0; #0 0x00007fffedae91b5 in WTFCrash () at ../../Source/WTF/wtf/Assertions.cpp:321 #1 0x00007ffff3a9f7f8 in WebCore::isAnonymousRubyInlineBlock (object=0x826910) at ../../Source/WebCore/rendering/RenderRuby.cpp:47 #2 0x00007ffff3a9f86a in WebCore::isRubyBeforeBlock (object=0x826910) at ../../Source/WebCore/rendering/RenderRuby.cpp:61 #3 0x00007ffff3a9f972 in WebCore::rubyBeforeBlock (ruby=0x8e4b30) at ../../Source/WebCore/rendering/RenderRuby.cpp:78 #4 0x00007ffff3a9fb14 in WebCore::lastRubyRun (ruby=0x8e4b30) at ../../Source/WebCore/rendering/RenderRuby.cpp:99 #5 0x00007ffff3aa058c in WebCore::RenderRubyAsBlock::addChild (this=0x8e4b30, child=0x9eca70, beforeChild=0x0) at ../../Source/WebCore/rendering/RenderRuby.cpp:286 #6 0x00007ffff3bfcec4 in WebCore::Style::RenderTreePosition::insert (this=0x7fffffffce70, renderer=...) at ../../Source/WebCore/style/StyleResolveTree.cpp:224 #7 0x00007ffff3bfddaf in WebCore::Style::createTextRendererIfNeeded (textNode=..., renderTreePosition=...) at ../../Source/WebCore/style/StyleResolveTree.cpp:441 #8 0x00007ffff3bfde0e in WebCore::Style::attachTextRenderer (textNode=..., renderTreePosition=...) at ../../Source/WebCore/style/StyleResolveTree.cpp:446 #9 0x00007ffff3bff6c9 in WebCore::Style::resolveTextNode (text=..., renderTreePosition=...) at ../../Source/WebCore/style/StyleResolveTree.cpp:806 #10 0x00007ffff3bffc6f in WebCore::Style::resolveTree (current=..., inheritedStyle=..., renderTreePosition=..., change=WebCore::Style::NoChange) at ../../Source/WebCore/style/StyleResolveTree.cpp:943 #11 0x00007ffff3bffd67 in WebCore::Style::resolveTree (current=..., inheritedStyle=..., renderTreePosition=..., change=WebCore::Style::NoChange) at ../../Source/WebCore/style/StyleResolveTree.cpp:958 #12 0x00007ffff3bffd67 in WebCore::Style::resolveTree (current=..., inheritedStyle=..., renderTreePosition=..., change=WebCore::Style::NoChange) at ../../Source/WebCore/style/StyleResolveTree.cpp:958 #13 0x00007ffff3c00062 in WebCore::Style::resolveTree (document=..., change=WebCore::Style::NoChange) at ../../Source/WebCore/style/StyleResolveTree.cpp:1000 #14 0x00007ffff302a08d in WebCore::Document::recalcStyle (this=0x9499b0, change=WebCore::Style::NoChange) at ../../Source/WebCore/dom/Document.cpp:1798 #15 0x00007ffff302a398 in WebCore::Document::updateStyleIfNeeded (this=0x9499b0) at ../../Source/WebCore/dom/Document.cpp:1843 #16 0x00007ffff30354b9 in WebCore::Document::finishedParsing (this=0x9499b0) at ../../Source/WebCore/dom/Document.cpp:4611 #17 0x00007ffff338d2af in WebCore::HTMLConstructionSite::finishedParsing (this=0x88b628) at ../../Source/WebCore/html/parser/HTMLConstructionSite.cpp:395 #18 0x00007ffff33cb333 in WebCore::HTMLTreeBuilder::finished (this=0x88b610) at ../../Source/WebCore/html/parser/HTMLTreeBuilder.cpp:2998 #19 0x00007ffff3395f12 in WebCore::HTMLDocumentParser::end (this=0x88b220) at ../../Source/WebCore/html/parser/HTMLDocumentParser.cpp:439 #20 0x00007ffff3395ffd in WebCore::HTMLDocumentParser::attemptToRunDeferredScriptsAndEnd (this=0x88b220) at ../../Source/WebCore/html/parser/HTMLDocumentParser.cpp:450 #21 0x00007ffff3394aab in WebCore::HTMLDocumentParser::prepareToStopParsing (this=0x88b220) at ../../Source/WebCore/html/parser/HTMLDocumentParser.cpp:165 #22 0x00007ffff3396040 in WebCore::HTMLDocumentParser::attemptToEnd (this=0x88b220) at ../../Source/WebCore/html/parser/HTMLDocumentParser.cpp:462 #23 0x00007ffff33960f7 in WebCore::HTMLDocumentParser::finish (this=0x88b220) at ../../Source/WebCore/html/parser/HTMLDocumentParser.cpp:490 #24 0x00007ffff3503211 in WebCore::DocumentWriter::end (this=0x8508d0) at ../../Source/WebCore/loader/DocumentWriter.cpp:246 #25 0x00007ffff34ee75b in WebCore::DocumentLoader::finishedLoading (this=0x850830, finishTime=0) at ../../Source/WebCore/loader/DocumentLoader.cpp:441 #26 0x00007ffff34ee4c4 in WebCore::DocumentLoader::notifyFinished (this=0x850830, resource=0x84c4d0) at ../../Source/WebCore/loader/DocumentLoader.cpp:375 #27 0x00007ffff35a0a5a in WebCore::CachedResource::checkNotify (this=0x84c4d0) at ../../Source/WebCore/loader/cache/CachedResource.cpp:347 #28 0x00007ffff35a0b64 in WebCore::CachedResource::finishLoading (this=0x84c4d0) at ../../Source/WebCore/loader/cache/CachedResource.cpp:363 #29 0x00007ffff359d466 in WebCore::CachedRawResource::finishLoading (this=0x84c4d0, data=0x7915b0) at ../../Source/WebCore/loader/cache/CachedRawResource.cpp:101 #30 0x00007ffff35518fa in WebCore::SubresourceLoader::didFinishLoading (this=0x84ca40, finishTime=0) at ../../Source/WebCore/loader/SubresourceLoader.cpp:309 #31 0x00007ffff354d57d in WebCore::ResourceLoader::didFinishLoading (this=0x84ca40, finishTime=0) at ../../Source/WebCore/loader/ResourceLoader.cpp:512 #32 0x00007ffff3ef1333 in WebCore::readCallback (asyncResult=0x88a9c0, data=0x888a10) at ../../Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp:1306 #33 0x00007fffeb86c7d6 in async_ready_callback_wrapper (source_object=0x9c5ed0, res=0x88a9c0, user_data=user_data@entry=0x888a10) at ginputstream.c:523 #34 0x00007fffeb8920d5 in g_task_return_now (task=0x88a9c0) at gtask.c:1077 #35 0x00007fffeb8920f9 in complete_in_idle_cb (task=0x88a9c0) at gtask.c:1086 #36 0x00007fffeaad1a2d in g_main_dispatch (context=0x6777f0) at gmain.c:3064 #37 g_main_context_dispatch (context=context@entry=0x6777f0) at gmain.c:3663 #38 0x00007fffeaad1d98 in g_main_context_iterate (context=0x6777f0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3734 #39 0x00007fffeaad205a in g_main_loop_run (loop=0xb00d40) at gmain.c:3928 #40 0x00007ffff457c386 in WTF::RunLoop::run () at ../../Source/WTF/wtf/gtk/RunLoopGtk.cpp:59 #41 0x00007ffff2ad6a46 in WebKit::ChildProcessMain<WebKit::WebProcess, WebKit::WebProcessMain> (argc=2, argv=0x7fffffffd8b8) at ../../Source/WebKit2/Shared/unix/ChildProcessMain.h:61 #42 0x00007ffff2ad68ab in WebKit::WebProcessMainUnix (argc=2, argv=0x7fffffffd8b8) at ../../Source/WebKit2/WebProcess/gtk/WebProcessMainGtk.cpp:73 #43 0x0000000000400871 in main (argc=2, argv=0x7fffffffd8b8) at ../../Source/WebKit2/WebProcess/EntryPoint/unix/WebProcessMain.cpp:44
Attachments
Test case (143 bytes, text/html)
2014-10-22 07:22 PDT, Renata Hodovan
no flags
Patch (5.77 KB, patch)
2014-10-31 18:48 PDT, Mihnea Ovidenie
no flags
Patch for landing (6.18 KB, patch)
2014-11-10 04:14 PST, Mihnea Ovidenie
no flags
Repo for Mac (133 bytes, text/html)
2016-10-27 14:49 PDT, Renata Hodovan
no flags
Mihnea Ovidenie
Comment 1 2014-10-31 18:48:27 PDT
Chris Dumez
Comment 2 2014-11-04 09:44:25 PST
Comment on attachment 240777 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=240777&action=review > LayoutTests/fast/multicol/newmulticol/ruby-from-multicol-to-auto.html:16 > + <p>Test that a ruby element with multicol style is correctly laid out when it looses the multicol style.</p> "loses" > Source/WebCore/rendering/RenderRuby.cpp:74 > #ifndef ASSERT_DISABLED ? > Source/WebCore/rendering/RenderRuby.cpp:75 > +static inline bool isRubyChildForNormalRemove(const RenderObject& object) *ForNormalRemoval ?
Mihnea Ovidenie
Comment 3 2014-11-10 04:14:38 PST
Created attachment 241284 [details] Patch for landing
WebKit Commit Bot
Comment 4 2014-11-10 06:59:00 PST
Comment on attachment 241284 [details] Patch for landing Clearing flags on attachment: 241284 Committed r175807: <http://trac.webkit.org/changeset/175807>
WebKit Commit Bot
Comment 5 2014-11-10 06:59:05 PST
All reviewed patches have been landed. Closing bug.
Renata Hodovan
Comment 6 2014-12-08 06:48:46 PST
@Mihnea: could you take a look at this bug please, since I can still/again reproduce the assertion failure with the original test case on r176943.
Mihnea Ovidenie
Comment 7 2014-12-09 01:54:28 PST
(In reply to comment #6) > @Mihnea: could you take a look at this bug please, since I can still/again > reproduce the assertion failure with the original test case on r176943. Are you sure you are still repro with the http://trac.webkit.org/changeset/176943? I am confused.
Renata Hodovan
Comment 8 2014-12-09 04:50:30 PST
(In reply to comment #7) > (In reply to comment #6) > > @Mihnea: could you take a look at this bug please, since I can still/again > > reproduce the assertion failure with the original test case on r176943. > > Are you sure you are still repro with the > http://trac.webkit.org/changeset/176943? I am confused. Yes. Today I updated my repo to r177016 and made a debug GTK build to verify it again and the assertion failure seems still valid to me.
Renata Hodovan
Comment 9 2016-03-11 08:37:29 PST
This is not valid on MAC but it's on EFL.
Renata Hodovan
Comment 10 2016-10-27 14:49:14 PDT
Created attachment 293063 [details] Repo for Mac
Michael Catanzaro
Comment 11 2017-03-11 10:35:17 PST
Closing this bug because the EFL port has been removed from trunk. If you feel this bug applies to a different upstream WebKit port and was closed in error, please either update the title and reopen the bug, or leave a comment to request this.
Note You need to log in before you can comment on or make changes to this bug.