WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
69200
Assertions when !renderer->needsLayout()
https://bugs.webkit.org/show_bug.cgi?id=69200
Summary
Assertions when !renderer->needsLayout()
Adam Barth
Reported
2011-09-30 18:09:21 PDT
This seem to be cropping up randomly: http/tests/inspector/change-iframe-src.html media/video-src-change.html svg/custom/recursive-mask.svg media/video-replaces-poster.html ASSERTION FAILED: !renderer->needsLayout() third_party/WebKit/Source/WebCore/rendering/RenderView.cpp(147) : virtual void WebCore::RenderView::layout() [14890:14890:14267711790715:ERROR:process_util_posix.cc(134)] Received signal 11 base::debug::StackTrace::StackTrace() [0x6f8d8a] base::(anonymous namespace)::StackDumpSignalHandler() [0x6b6281] 0x2b81e4a7baf0 WebCore::RenderView::layout() [0x163e157] WebCore::FrameView::layout() [0x1248ac1] WebCore::FrameView::visibleContentsResized() [0x124b1e9] WebCore::ScrollView::updateScrollbars() [0xe0963d] WebCore::ScrollView::setContentsSize() [0xe08643] WebCore::FrameView::setContentsSize() [0x1246d43] WebCore::FrameView::adjustViewSize() [0x1246fa3] WebCore::FrameView::layout() [0x1248b73] WebCore::Document::implicitClose() [0xc1fb49] WebCore::FrameLoader::checkCallImplicitClose() [0x11a055b] WebCore::FrameLoader::checkCompleted() [0x11a032e] WebCore::FrameLoader::finishedParsing() [0x11a0087] WebCore::Document::finishedParsing() [0xc2841c] WebCore::XMLDocumentParser::end() [0x1341af0] WebCore::XMLDocumentParser::finish() [0x1341b2a] WebCore::DocumentWriter::endIfNotLoadingMainResource() [0x11960a3] WebCore::DocumentWriter::end() [0x1195fab] WebCore::DocumentLoader::finishedLoading() [0x11874f1] WebCore::FrameLoader::finishedLoading() [0x11a7029] WebCore::MainResourceLoader::didFinishLoading() [0x11bbc1a] WebCore::ResourceLoader::didFinishLoading() [0x11ce8a9] WebCore::ResourceHandleInternal::didFinishLoading() [0x4f4648] webkit_glue::WebURLLoaderImpl::Context::OnCompletedRequest() [0x1a4ae9c] (anonymous namespace)::RequestProxy::NotifyCompletedRequest() [0x1b06915] DispatchToMethod<>() [0x1b0cffd] RunnableMethod<>::Run() [0x1b0c430] base::subtle::TaskClosureAdapter::Run() [0x6d5a87] base::internal::Invoker1<>::DoInvoke() [0x6947d2] base::Callback<>::Run() [0x676a85] MessageLoop::RunTask() [0x691375] MessageLoop::DeferOrRunPendingTask() [0x69147d] MessageLoop::DoWork() [0x691c93] base::MessagePumpGlib::HandleDispatch() [0x6ea61d] (anonymous namespace)::WorkSourceDispatch() [0x6e9b6f] 0x2b81deec58c2 0x2b81deec9748 0x2b81deec98fc base::MessagePumpGtk::RunOnce() [0x6ebe85] base::MessagePumpGlib::RunWithDispatcher() [0x6ea2d0] base::MessagePumpGlib::Run() [0x6ea6fa] MessageLoop::RunInternal() [0x691169] MessageLoop::RunHandler() [0x69101c] MessageLoop::Run() [0x690a37] webkit_support::RunMessageLoop() [0x60c96c] TestShell::waitTestFinished() [0x461b95] TestShell::runFileTest() [0x45a8b8] runTest() [0x42ee78] main [0x42f88b] 0x2b81e4a66c4d 0x41dea9
Attachments
Add attachment
proposed patch, testcase, etc.
Adam Barth
Comment 1
2011-09-30 18:10:47 PDT
Windows too: ASSERTION FAILED: !renderer->needsLayout() Backtrace: WebCore::RenderView::layout [0x011B588B+795] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\rendering\renderview.cpp:147) WebCore::FrameView::layout [0x0132966B+2347] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\page\frameview.cpp:1096) WebCore::Document::implicitClose [0x01AFB814+852] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\dom\document.cpp:2235) WebCore::FrameLoader::checkCallImplicitClose [0x013D89B4+132] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\loader\frameloader.cpp:797) WebCore::FrameLoader::checkCompleted [0x013D8742+242] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\loader\frameloader.cpp:746) WebCore::FrameLoader::finishedParsing [0x013D84A8+152] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\loader\frameloader.cpp:680) WebCore::Document::finishedParsing [0x01B0487F+351] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\dom\document.cpp:4295) WebCore::HTMLTreeBuilder::finished [0x01AD3D44+100] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\html\parser\htmltreebuilder.cpp:2826) WebCore::HTMLDocumentParser::end [0x01AA45C3+131] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\html\parser\htmldocumentparser.cpp:382) WebCore::HTMLDocumentParser::attemptToRunDeferredScriptsAndEnd [0x01AA4696+182] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\html\parser\htmldocumentparser.cpp:391) WebCore::HTMLDocumentParser::prepareToStopParsing [0x01AA33EC+188] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\html\parser\htmldocumentparser.cpp:154) WebCore::HTMLDocumentParser::attemptToEnd [0x01AA4709+57] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\html\parser\htmldocumentparser.cpp:402) WebCore::HTMLDocumentParser::finish [0x01AA4863+51] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\html\parser\htmldocumentparser.cpp:430) WebCore::DocumentWriter::endIfNotLoadingMainResource [0x014A3625+229] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\loader\documentwriter.cpp:235) WebCore::DocumentWriter::end [0x014A3527+39] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\loader\documentwriter.cpp:215) WebCore::DocumentLoader::finishedLoading [0x014804A4+84] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\loader\documentloader.cpp:286) WebCore::FrameLoader::finishedLoading [0x013DE702+82] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\loader\frameloader.cpp:2085) WebCore::MainResourceLoader::didFinishLoading [0x0176B8B0+304] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\loader\mainresourceloader.cpp:477) WebCore::ResourceLoader::didFinishLoading [0x017645F1+97] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webcore\loader\resourceloader.cpp:451) WebCore::ResourceHandleInternal::didFinishLoading [0x00A7DBC0+144] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\source\webkit\chromium\src\resourcehandle.cpp:158) webkit_glue::WebURLLoaderImpl::Context::OnCompletedRequest [0x00B7B505+533] (e:\b\build\slave\webkit_win__dbg__1_\build\src\webkit\glue\weburlloader_impl.cc:629) `anonymous namespace'::RequestProxy::NotifyCompletedRequest [0x00AFFD49+57] (e:\b\build\slave\webkit_win__dbg__1_\build\src\webkit\tools\test_shell\simple_resource_loader_bridge.cc:289) [0x00B08211+33] (e:\b\build\slave\webkit_win__dbg__1_\build\src\base\tuple.h:560) [0x00B067B5+53] (e:\b\build\slave\webkit_win__dbg__1_\build\src\base\task.h:348) base::subtle::TaskClosureAdapter::Run [0x022BE672+50] (e:\b\build\slave\webkit_win__dbg__1_\build\src\base\task.cc:56) base::internal::Invoker1<0,base::internal::InvokerStorage1<void (__thiscall base::subtle::TaskClosureAdapter::*)(void),base::subtle::TaskClosureAdapter *>,void (__thiscall base::subtle::TaskClosureAdapter::*)(void)>::DoInvoke [0x022B8EED+45] (e:\b\build\slave\webkit_win__dbg__1_\build\src\base\bind_internal.h:595) base::Callback<void __cdecl(void)>::Run [0x008BA37F+47] (e:\b\build\slave\webkit_win__dbg__1_\build\src\base\callback.h:269) MessageLoop::RunTask [0x022AF595+293] (e:\b\build\slave\webkit_win__dbg__1_\build\src\base\message_loop.cc:478) MessageLoop::DeferOrRunPendingTask [0x022AF6D3+51] (e:\b\build\slave\webkit_win__dbg__1_\build\src\base\message_loop.cc:495) MessageLoop::DoWork [0x022B00AD+221] (e:\b\build\slave\webkit_win__dbg__1_\build\src\base\message_loop.cc:682) base::MessagePumpForUI::DoRunLoop [0x0231B574+84] (e:\b\build\slave\webkit_win__dbg__1_\build\src\base\message_pump_win.cc:203) base::MessagePumpWin::RunWithDispatcher [0x0231ADF2+130] (e:\b\build\slave\webkit_win__dbg__1_\build\src\base\message_pump_win.cc:51) base::MessagePumpWin::Run [0x0231B05C+28] (e:\b\build\slave\webkit_win__dbg__1_\build\src\base\message_pump_win.h:80) MessageLoop::RunInternal [0x022AF2E7+247] (e:\b\build\slave\webkit_win__dbg__1_\build\src\base\message_loop.cc:443) MessageLoop::RunHandler [0x022AF0BE+46] (e:\b\build\slave\webkit_win__dbg__1_\build\src\base\message_loop.cc:417) MessageLoop::Run [0x022AE9CA+58] (e:\b\build\slave\webkit_win__dbg__1_\build\src\base\message_loop.cc:341) webkit_support::RunMessageLoop [0x0090058F+15] (e:\b\build\slave\webkit_win__dbg__1_\build\src\webkit\support\webkit_support.cc:401) TestShell::waitTestFinished [0x0042CEBD+141] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\tools\dumprendertree\chromium\testshellwin.cpp:106) TestShell::runFileTest [0x0044796F+479] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\tools\dumprendertree\chromium\testshell.cpp:233) runTest [0x0041BB3D+733] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\tools\dumprendertree\chromium\dumprendertree.cpp:125) main [0x0041B336+2262] (e:\b\build\slave\webkit_win__dbg__1_\build\src\third_party\webkit\tools\dumprendertree\chromium\dumprendertree.cpp:256) __tmainCRTStartup [0x00AA5857+279] (f:\dd\vctools\crt_bld\self_x86\crt\src\crt0.c:266) mainCRTStartup [0x00AA572F+15] (f:\dd\vctools\crt_bld\self_x86\crt\src\crt0.c:182) RegisterWaitForInputIdle [0x7C817077+73] None
Adam Barth
Comment 2
2011-09-30 18:12:20 PDT
Seems to have been caused but this patch:
http://trac.webkit.org/changeset/96427
Adam Barth
Comment 3
2011-09-30 18:12:55 PDT
Adding the authors of the patch that is triggering the assertions.
Adam Barth
Comment 4
2011-09-30 18:16:29 PDT
I've removed the assert in
http://trac.webkit.org/changeset/96445
. If this assert is catching real bugs, we should fix those bugs and then add the assert back.
Adam Barth
Comment 5
2011-09-30 18:16:49 PDT
I would comment on the original bug, but it's only in rdar.
Adam Barth
Comment 6
2011-09-30 18:31:22 PDT
fast/flexbox/021.html seems to be a popular test to trigger the assert.
mitz
Comment 7
2011-09-30 18:47:16 PDT
I am terribly sorry. This was not meant to be checked in, and not part of the patch as reviewed. Thanks for reverting the change!
Longinc
Comment 8
2012-10-17 20:20:20 PDT
ASSERT FAILED: ASSERT(!renderer()->needsLayout()); 1 0x1129a33 WebCore::HTMLFormControlElement::isFocusable() const 2 0x1142445 WebCore::HTMLInputElement::isMouseFocusable() const 3 0x114c3a1 WebCore::HTMLLabelElement::defaultEventHandler(WebCore::Event*) 4 0xfc46b9 WebCore::EventDispatcher::dispatchEvent(WTF::PassRefPtr<WebCore::Event>) 5 0x13e331b WebCore::MouseEventDispatchMediator::dispatchEvent(WebCore::EventDispatcher*) const 6 0xfc3465 WebCore::EventDispatcher::dispatchEvent(WebCore::Node*, WTF::PassRefPtr<WebCore::EventDispatchMediator>) 7 0x1400273 WebCore::Node::dispatchMouseEvent(WebCore::PlatformMouseEvent const&, WTF::AtomicString const&, int, WebCore::Node*) 8 0xfcd55b WebCore::EventHandler::dispatchMouseEvent(WTF::AtomicString const&, WebCore::Node*, bool, int, WebCore::PlatformMouseEvent const&, bool) 9 0xfcee75 WebCore::EventHandler::handleMouseReleaseEvent(WebCore::PlatformMouseEvent const&)
Longinc
Comment 9
2012-10-17 20:22:00 PDT
(In reply to
comment #8
)
> ASSERT FAILED: > ASSERT(!renderer()->needsLayout()); > 1 0x1129a33 WebCore::HTMLFormControlElement::isFocusable() const > 2 0x1142445 WebCore::HTMLInputElement::isMouseFocusable() const > 3 0x114c3a1 WebCore::HTMLLabelElement::defaultEventHandler(WebCore::Event*) > 4 0xfc46b9 WebCore::EventDispatcher::dispatchEvent(WTF::PassRefPtr<WebCore::Event>) > 5 0x13e331b WebCore::MouseEventDispatchMediator::dispatchEvent(WebCore::EventDispatcher*) const > 6 0xfc3465 WebCore::EventDispatcher::dispatchEvent(WebCore::Node*, WTF::PassRefPtr<WebCore::EventDispatchMediator>) > 7 0x1400273 WebCore::Node::dispatchMouseEvent(WebCore::PlatformMouseEvent const&, WTF::AtomicString const&, int, WebCore::Node*) > 8 0xfcd55b WebCore::EventHandler::dispatchMouseEvent(WTF::AtomicString const&, WebCore::Node*, bool, int, WebCore::PlatformMouseEvent const&, bool) > 9 0xfcee75 WebCore::EventHandler::handleMouseReleaseEvent(WebCore::PlatformMouseEvent const&)
SVN:112327
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