WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
141032
ASSERTION FAILED: !root->needsLayout() in WebCore::FrameView::layout
https://bugs.webkit.org/show_bug.cgi?id=141032
Summary
ASSERTION FAILED: !root->needsLayout() in WebCore::FrameView::layout
Renata Hodovan
Reported
2015-01-29 07:18:16 PST
Created
attachment 245618
[details]
Test case Load this with debug WK: <style> * { display:list-item; } </style> <marquee> <font></font> </marquee> Backtrace: ASSERTION FAILED: !root->needsLayout() ../../Source/WebCore/page/FrameView.cpp(1379) : void WebCore::FrameView::layout(bool) Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 0x7fff8affd700 (LWP 10698)] 0x00007fffed72443d in WTFCrash () at ../../Source/WTF/wtf/Assertions.cpp:321 321 *(int *)(uintptr_t)0xbbadbeef = 0; #0 0x00007fffed72443d in WTFCrash () at ../../Source/WTF/wtf/Assertions.cpp:321 #1 0x00007ffff3520215 in WebCore::FrameView::layout (this=0x7ffff7ec4b00, allowSubtree=true) at ../../Source/WebCore/page/FrameView.cpp:1379 #2 0x00007ffff2ec5963 in WebCore::Document::implicitClose (this=0x7fff9851c000) at ../../Source/WebCore/dom/Document.cpp:2497 #3 0x00007ffff33c6915 in WebCore::FrameLoader::checkCallImplicitClose (this=0x7ffff7f37a98) at ../../Source/WebCore/loader/FrameLoader.cpp:901 #4 0x00007ffff33c6681 in WebCore::FrameLoader::checkCompleted (this=0x7ffff7f37a98) at ../../Source/WebCore/loader/FrameLoader.cpp:847 #5 0x00007ffff33c63ea in WebCore::FrameLoader::finishedParsing (this=0x7ffff7f37a98) at ../../Source/WebCore/loader/FrameLoader.cpp:767 #6 0x00007ffff2ece858 in WebCore::Document::finishedParsing (this=0x7fff9851c000) at ../../Source/WebCore/dom/Document.cpp:4629 #7 0x00007ffff32372b3 in WebCore::HTMLConstructionSite::finishedParsing (this=0x7ffff7f31800) at ../../Source/WebCore/html/parser/HTMLConstructionSite.cpp:404 #8 0x00007ffff3273c26 in WebCore::HTMLTreeBuilder::finished (this=0x7ffff7f317e0) at ../../Source/WebCore/html/parser/HTMLTreeBuilder.cpp:2941 #9 0x00007ffff323fb32 in WebCore::HTMLDocumentParser::end (this=0x7ffff7ecc100) at ../../Source/WebCore/html/parser/HTMLDocumentParser.cpp:402 #10 0x00007ffff323fc00 in WebCore::HTMLDocumentParser::attemptToRunDeferredScriptsAndEnd (this=0x7ffff7ecc100) at ../../Source/WebCore/html/parser/HTMLDocumentParser.cpp:411 #11 0x00007ffff323e8b0 in WebCore::HTMLDocumentParser::prepareToStopParsing (this=0x7ffff7ecc100) at ../../Source/WebCore/html/parser/HTMLDocumentParser.cpp:132 #12 0x00007ffff323fc37 in WebCore::HTMLDocumentParser::attemptToEnd (this=0x7ffff7ecc100) at ../../Source/WebCore/html/parser/HTMLDocumentParser.cpp:423 #13 0x00007ffff323fce5 in WebCore::HTMLDocumentParser::finish (this=0x7ffff7ecc100) at ../../Source/WebCore/html/parser/HTMLDocumentParser.cpp:451 #14 0x00007ffff33b6ac7 in WebCore::DocumentWriter::end (this=0x7ffff7eb7aa0) at ../../Source/WebCore/loader/DocumentWriter.cpp:247 #15 0x00007ffff33a212b in WebCore::DocumentLoader::finishedLoading (this=0x7ffff7eb7a00, finishTime=0) at ../../Source/WebCore/loader/DocumentLoader.cpp:440 #16 0x00007ffff33a1e94 in WebCore::DocumentLoader::notifyFinished (this=0x7ffff7eb7a00, resource=0x7ffff7ec4680) at ../../Source/WebCore/loader/DocumentLoader.cpp:374 #17 0x00007ffff345619c in WebCore::CachedResource::checkNotify (this=0x7ffff7ec4680) at ../../Source/WebCore/loader/cache/CachedResource.cpp:296 #18 0x00007ffff345629a in WebCore::CachedResource::finishLoading (this=0x7ffff7ec4680) at ../../Source/WebCore/loader/cache/CachedResource.cpp:312 #19 0x00007ffff34528a1 in WebCore::CachedRawResource::finishLoading (this=0x7ffff7ec4680, data=0x7fff98514570) at ../../Source/WebCore/loader/cache/CachedRawResource.cpp:104 #20 0x00007ffff34050fd in WebCore::SubresourceLoader::didFinishLoading (this=0x7ffff7ec4200, finishTime=0) at ../../Source/WebCore/loader/SubresourceLoader.cpp:364 #21 0x00007ffff3400a37 in WebCore::ResourceLoader::didFinishLoading (this=0x7ffff7ec4200, finishTime=0) at ../../Source/WebCore/loader/ResourceLoader.cpp:502 #22 0x00007ffff3db16a5 in WebCore::readCallback (asyncResult=0x6ba1f0, data=0x7fff9850c100) at ../../Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp:1295 #23 0x00007fffeb26d7e6 in async_ready_callback_wrapper (source_object=0x7c72d0, res=0x6ba1f0, user_data=user_data@entry=0x7fff9850c100) at ginputstream.c:523 #24 0x00007fffeb2930e5 in g_task_return_now (task=0x6ba1f0) at gtask.c:1077 #25 0x00007fffeb293109 in complete_in_idle_cb (task=0x6ba1f0) at gtask.c:1086 #26 0x00007fffea54ba1d in g_main_dispatch (context=0x478b00) at gmain.c:3064 #27 g_main_context_dispatch (context=context@entry=0x478b00) at gmain.c:3663 #28 0x00007fffea54bd88 in g_main_context_iterate (context=0x478b00, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3734 #29 0x00007fffea54c04a in g_main_loop_run (loop=0x901bd0) at gmain.c:3928 #30 0x00007ffff44b40b6 in WTF::RunLoop::run () at ../../Source/WTF/wtf/gtk/RunLoopGtk.cpp:59 #31 0x00007ffff299deac in WebKit::ChildProcessMain<WebKit::WebProcess, WebKit::WebProcessMain> (argc=2, argv=0x7fffffffd988) at ../../Source/WebKit2/Shared/unix/ChildProcessMain.h:61 #32 0x00007ffff299dd11 in WebKit::WebProcessMainUnix (argc=2, argv=0x7fffffffd988) at ../../Source/WebKit2/WebProcess/gtk/WebProcessMainGtk.cpp:77 #33 0x00000000004008d1 in main (argc=2, argv=0x7fffffffd988) at ../../Source/WebKit2/WebProcess/EntryPoint/unix/WebProcessMain.cpp:44
Attachments
Test case
(84 bytes, text/html)
2015-01-29 07:18 PST
,
Renata Hodovan
no flags
Details
patch
(1.43 KB, patch)
2015-02-03 05:52 PST
,
Hyungwook Lee
no flags
Details
Formatted Diff
Diff
patch
(1.54 KB, patch)
2015-02-03 17:45 PST
,
Hyungwook Lee
no flags
Details
Formatted Diff
Diff
Show Obsolete
(1)
View All
Add attachment
proposed patch, testcase, etc.
Hyungwook Lee
Comment 1
2015-01-30 05:59:00 PST
I've start to look at this issue.
Hyungwook Lee
Comment 2
2015-02-03 05:52:18 PST
Created
attachment 245934
[details]
patch patch for this issue.
Darin Adler
Comment 3
2015-02-03 08:47:35 PST
Comment on
attachment 245934
[details]
patch This patch doesn’t apply. Could you rebase and attach one that does apply? That change looks fine.
Hyungwook Lee
Comment 4
2015-02-03 17:45:32 PST
Created
attachment 245998
[details]
patch
Darin Adler
Comment 5
2015-02-04 09:12:44 PST
Comment on
attachment 245998
[details]
patch I think this change is OK;I am a little bit unclear on this. If one layout can cause the need for another layout, maybe we have a real problem here, not just a misplaced assert.
Hyungwook Lee
Comment 6
2015-02-05 01:05:13 PST
In my understanding RenderLayer::updateLayerPositionsAfterLayout() can makes another layout when we have Marquee Element. I think FrameView::layout() looks allowing another layout internally if needed.
WebKit Commit Bot
Comment 7
2015-02-05 17:05:14 PST
Comment on
attachment 245998
[details]
patch Clearing flags on attachment: 245998 Committed
r179726
: <
http://trac.webkit.org/changeset/179726
>
WebKit Commit Bot
Comment 8
2015-02-05 17:05:18 PST
All reviewed patches have been landed. Closing bug.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug