Closed Bug 1323654 Opened 5 years ago Closed 5 years ago

stylo: several tests fatally assert with "primaryFrame (Frame construction should be scheduled, and it takes the correct style for the children, so no need to be here.)"

Categories

(Core :: CSS Parsing and Computation, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla53
Tracking Status
firefox53 --- fixed

People

(Reporter: heycam, Assigned: bholley)

References

Details

Thread 1 "firefox" received signal SIGSEGV, Segmentation fault.
0x00007fffe6f269d3 in mozilla::ServoRestyleManager::RecreateStyleContexts (this=0x7fffb81640c0, aElement=0x7fffb619c050, aParentContext=0x7fffbe6e0dc8, aStyleSet=0x7fffbef47fd0, aChangeListToProcess=...)
    at /z/stylo/hg-incubator/layout/base/ServoRestyleManager.cpp:211
211	        MOZ_ASSERT(primaryFrame,
(gdb) bt
#0  0x00007fffe6f269d3 in mozilla::ServoRestyleManager::RecreateStyleContexts (this=0x7fffb81640c0, aElement=0x7fffb619c050, aParentContext=0x7fffbe6e0dc8, aStyleSet=0x7fffbef47fd0, aChangeListToProcess=...)
    at /z/stylo/hg-incubator/layout/base/ServoRestyleManager.cpp:211
#1  0x00007fffe6f26a25 in mozilla::ServoRestyleManager::RecreateStyleContexts (this=0x7fffb81640c0, aElement=0x7fffce250e80, aParentContext=0x7fffbe6e0c08, aStyleSet=0x7fffbef47fd0, aChangeListToProcess=...)
    at /z/stylo/hg-incubator/layout/base/ServoRestyleManager.cpp:214
#2  0x00007fffe6f26a25 in mozilla::ServoRestyleManager::RecreateStyleContexts (this=0x7fffb81640c0, aElement=0x7fffce31a7c0, aParentContext=0x0, aStyleSet=0x7fffbef47fd0, aChangeListToProcess=...)
    at /z/stylo/hg-incubator/layout/base/ServoRestyleManager.cpp:214
#3  0x00007fffe6f26f2e in mozilla::ServoRestyleManager::ProcessPendingRestyles (this=0x7fffb81640c0) at /z/stylo/hg-incubator/layout/base/ServoRestyleManager.cpp:315
#4  0x00007fffe6f2ed3d in mozilla::RestyleManagerHandle::Ptr::ProcessPendingRestyles (this=0x7fffffff4990) at /z/stylo/hg-incubator/obj/dist/include/mozilla/RestyleManagerHandleInlines.h:75
#5  0x00007fffe6ef92aa in mozilla::PresShell::FlushPendingNotifications (this=0x7fffd161c000, aFlush=...) at /z/stylo/hg-incubator/layout/base/PresShell.cpp:4115
#6  0x00007fffe6ef8ca0 in mozilla::PresShell::FlushPendingNotifications (this=0x7fffd161c000, aType=Flush_Style) at /z/stylo/hg-incubator/layout/base/PresShell.cpp:4007
#7  0x00007fffe48a6bf2 in nsDocument::FlushPendingNotifications (this=0x7fffb5e2c000, aType=Flush_Style) at /z/stylo/hg-incubator/dom/base/nsDocument.cpp:7756
#8  0x00007fffe6d960b8 in nsComputedDOMStyle::UpdateCurrentStyleSources (this=0x7fffb74d3280, aNeedsLayoutFlush=false) at /z/stylo/hg-incubator/layout/style/nsComputedDOMStyle.cpp:634
#9  0x00007fffe6d96a9d in nsComputedDOMStyle::GetPropertyCSSValue (this=0x7fffb74d3280, aPropertyName=..., aRv=...) at /z/stylo/hg-incubator/layout/style/nsComputedDOMStyle.cpp:797
#10 0x00007fffe6d95dba in nsComputedDOMStyle::GetPropertyValue (this=0x7fffb74d3280, aPropertyName=..., aReturn=...) at /z/stylo/hg-incubator/layout/style/nsComputedDOMStyle.cpp:379
#11 0x00007fffe6b76fdc in mozilla::CSSEditUtils::GetCSSInlinePropertyBase (this=0x7fffd16b93e0, aNode=0x7fffb74d3160, aProperty=0x7fffd38659a0, aValue=..., aStyleType=mozilla::CSSEditUtils::eComputed)
    at /z/stylo/hg-incubator/editor/libeditor/CSSEditUtils.cpp:540
#12 0x00007fffe6b77293 in mozilla::CSSEditUtils::GetComputedProperty (this=0x7fffd16b93e0, aNode=..., aProperty=..., aValue=...) at /z/stylo/hg-incubator/editor/libeditor/CSSEditUtils.cpp:519
#13 0x00007fffe6ba7681 in mozilla::HTMLEditor::GetAbsolutelyPositionedSelectionContainer (this=0x7fffb1a64000, _retval=0x7fffffff51c8) at /z/stylo/hg-incubator/editor/libeditor/HTMLAbsPositionEditor.cpp:91
#14 0x00007fffe6bbc9f5 in mozilla::HTMLEditor::CheckSelectionStateForAnonymousButtons (this=0x7fffb1a64000, aSelection=0x7fffb6580790) at /z/stylo/hg-incubator/editor/libeditor/HTMLAnonymousNodeEditor.cpp:353
#15 0x00007fffe6c237e8 in mozilla::HTMLEditor::EndUpdateViewBatch (this=0x7fffb1a64000) at /z/stylo/hg-incubator/editor/libeditor/HTMLEditor.cpp:4844
#16 0x00007fffe6b87e86 in mozilla::EditorBase::EndPlaceHolderTransaction (this=0x7fffb1a64000) at /z/stylo/hg-incubator/editor/libeditor/EditorBase.cpp:966
#17 0x00007fffe6bb4813 in mozilla::AutoPlaceHolderBatch::~AutoPlaceHolderBatch (this=0x7fffffff5608) at /z/stylo/hg-incubator/obj/dist/include/mozilla/EditorUtils.h:170
#18 0x00007fffe6bafaef in mozilla::AutoEditBatch::~AutoEditBatch (this=0x7fffffff5608) at /z/stylo/hg-incubator/obj/dist/include/mozilla/EditorUtils.h:192
#19 0x00007fffe6c0fdc9 in mozilla::HTMLEditor::Indent (this=0x7fffb1a64000, aIndent=...) at /z/stylo/hg-incubator/editor/libeditor/HTMLEditor.cpp:2258
#20 0x00007fffe6ca11f7 in nsIndentCommand::DoCommand (this=0x7fffcd98f380, aCommandName=0x7fffffff5a58 "cmd_indent", refCon=0x7fffb1a64000) at /z/stylo/hg-incubator/editor/composer/nsComposerCommands.cpp:466
#21 0x00007fffe77b08aa in nsControllerCommandTable::DoCommand (this=0x7fffba16ef80, aCommandName=0x7fffffff5a58 "cmd_indent", aCommandRefCon=0x7fffb1a64000)
    at /z/stylo/hg-incubator/embedding/components/commandhandler/nsControllerCommandTable.cpp:147
#22 0x00007fffe77abd28 in nsBaseCommandController::DoCommand (this=0x7fffb6435060, aCommand=0x7fffffff5a58 "cmd_indent") at /z/stylo/hg-incubator/embedding/components/commandhandler/nsBaseCommandController.cpp:136
#23 0x00007fffe77aedd6 in nsCommandManager::DoCommand (this=0x7fffcd9d3390, aCommandName=0x7fffffff5a58 "cmd_indent", aCommandParams=0x0, aTargetWindow=0x7fffb4e24020)
    at /z/stylo/hg-incubator/embedding/components/commandhandler/nsCommandManager.cpp:214
#24 0x00007fffe5de5431 in nsHTMLDocument::ExecCommand (this=0x7fffb5e2c000, commandID=..., doShowUI=false, value=..., aCallerType=mozilla::dom::CallerType::NonSystem, rv=...) at /z/stylo/hg-incubator/dom/html/nsHTMLDocument.cpp:3236
#25 0x00007fffe5699782 in mozilla::dom::HTMLDocumentBinding::execCommand (cx=0x7fffdbbb7000, obj=..., self=0x7fffb5e2c000, args=...) at /z/stylo/hg-incubator/obj/dom/bindings/HTMLDocumentBinding.cpp:829
#26 0x00007fffe58aa6f2 in mozilla::dom::GenericBindingMethod (cx=0x7fffdbbb7000, argc=3, vp=0x7fffd373e140) at /z/stylo/hg-incubator/dom/bindings/BindingUtils.cpp:2886
#27 0x00007fffe96a761d in js::CallJSNative (cx=0x7fffdbbb7000, native=0x7fffe58aa490 <mozilla::dom::GenericBindingMethod(JSContext*, unsigned int, JS::Value*)>, args=...) at /z/stylo/hg-incubator/js/src/jscntxtinlines.h:239
#28 0x00007fffe968b470 in js::InternalCallOrConstruct (cx=0x7fffdbbb7000, args=..., construct=js::NO_CONSTRUCT) at /z/stylo/hg-incubator/js/src/vm/Interpreter.cpp:457
#29 0x00007fffe968b86f in InternalCall (cx=0x7fffdbbb7000, args=...) at /z/stylo/hg-incubator/js/src/vm/Interpreter.cpp:502
#30 0x00007fffe968b66d in js::CallFromStack (cx=0x7fffdbbb7000, args=...) at /z/stylo/hg-incubator/js/src/vm/Interpreter.cpp:508
#31 0x00007fffe967fe76 in Interpret (cx=0x7fffdbbb7000, state=...) at /z/stylo/hg-incubator/js/src/vm/Interpreter.cpp:2919
#32 0x00007fffe96752d0 in js::RunScript (cx=0x7fffdbbb7000, state=...) at /z/stylo/hg-incubator/js/src/vm/Interpreter.cpp:403
#33 0x00007fffe968b568 in js::InternalCallOrConstruct (cx=0x7fffdbbb7000, args=..., construct=js::NO_CONSTRUCT) at /z/stylo/hg-incubator/js/src/vm/Interpreter.cpp:475
#34 0x00007fffe968b86f in InternalCall (cx=0x7fffdbbb7000, args=...) at /z/stylo/hg-incubator/js/src/vm/Interpreter.cpp:502
#35 0x00007fffe968b8e6 in js::Call (cx=0x7fffdbbb7000, fval=..., thisv=..., args=..., rval=...) at /z/stylo/hg-incubator/js/src/vm/Interpreter.cpp:521
#36 0x00007fffe937d1b0 in JS::Call (cx=0x7fffdbbb7000, thisv=..., fval=..., args=..., rval=...) at /z/stylo/hg-incubator/js/src/jsapi.cpp:2830
#37 0x00007fffe554405f in mozilla::dom::EventHandlerNonNull::Call (this=0x7fffb8164e80, cx=0x7fffdbbb7000, aThisVal=..., event=..., aRetVal=..., aRv=...) at /z/stylo/hg-incubator/obj/dom/bindings/EventHandlerBinding.cpp:259
#38 0x00007fffe5b85760 in mozilla::dom::EventHandlerNonNull::Call<nsISupports*> (this=0x7fffb8164e80, thisVal=@0x7fffb81933e8: 0x7fffcf985800, event=..., aRetVal=..., aRv=..., aExecutionReason=0x7fffeacd9ce3 "EventHandlerNonNull", 
    aExceptionHandling=mozilla::dom::CallbackObject::eReportExceptions, aCompartment=0x0) at /z/stylo/hg-incubator/obj/dist/include/mozilla/dom/EventHandlerBinding.h:361
#39 0x00007fffe5b761c1 in mozilla::JSEventHandler::HandleEvent (this=0x7fffb81933d0, aEvent=0x7fffba16ece0) at /z/stylo/hg-incubator/dom/events/JSEventHandler.cpp:214
#40 0x00007fffe5b60891 in mozilla::EventListenerManager::HandleEventSubType (this=0x7fffb68730d0, aListener=0x7fffb6873100, aDOMEvent=0x7fffba16ece0, aCurrentTarget=0x7fffcf985800)
    at /z/stylo/hg-incubator/dom/events/EventListenerManager.cpp:1133
#41 0x00007fffe5b60fbe in mozilla::EventListenerManager::HandleEventInternal (this=0x7fffb68730d0, aPresContext=0x7fffcf919000, aEvent=0x7fffffffa6a0, aDOMEvent=0x7fffffffa370, aCurrentTarget=0x7fffcf985800, aEventStatus=0x7fffffffa378)
    at /z/stylo/hg-incubator/dom/events/EventListenerManager.cpp:1286
#42 0x00007fffe5b8af7d in mozilla::EventListenerManager::HandleEvent (this=0x7fffb68730d0, aPresContext=0x7fffcf919000, aEvent=0x7fffffffa6a0, aDOMEvent=0x7fffffffa370, aCurrentTarget=0x7fffcf985800, aEventStatus=0x7fffffffa378)
    at /z/stylo/hg-incubator/obj/dist/include/mozilla/EventListenerManager.h:374
#43 0x00007fffe5b7dd38 in mozilla::EventTargetChainItem::HandleEvent (this=0x7fffc0061008, aVisitor=..., aCd=...) at /z/stylo/hg-incubator/dom/events/EventDispatcher.cpp:314
#44 0x00007fffe5b5880a in mozilla::EventTargetChainItem::HandleEventTargetChain (aChain=..., aVisitor=..., aCallback=0x0, aCd=...) at /z/stylo/hg-incubator/dom/events/EventDispatcher.cpp:463
#45 0x00007fffe5b59ddf in mozilla::EventDispatcher::Dispatch (aTarget=0x7fffb4e24020, aPresContext=0x7fffcf919000, aEvent=0x7fffffffa6a0, aDOMEvent=0x0, aEventStatus=0x7fffffffa700, aCallback=0x0, aTargets=0x0)
    at /z/stylo/hg-incubator/dom/events/EventDispatcher.cpp:820
#46 0x00007fffe6f7eef5 in nsDocumentViewer::LoadComplete (this=0x7fffb37ca8c0, aStatus=nsresult::NS_OK) at /z/stylo/hg-incubator/layout/base/nsDocumentViewer.cpp:1024
#47 0x00007fffe772771d in nsDocShell::EndPageLoad (this=0x7fffb1630800, aProgress=0x7fffb1630828, aChannel=0x7fffb74092b0, aStatus=nsresult::NS_OK) at /z/stylo/hg-incubator/docshell/base/nsDocShell.cpp:7571
#48 0x00007fffe77259d3 in nsDocShell::OnStateChange (this=0x7fffb1630800, aProgress=0x7fffb1630828, aRequest=0x7fffb74092b0, aStateFlags=131088, aStatus=nsresult::NS_OK) at /z/stylo/hg-incubator/docshell/base/nsDocShell.cpp:7375
#49 0x00007fffe3f27cce in nsDocLoader::DoFireOnStateChange (this=0x7fffb1630800, aProgress=0x7fffb1630828, aRequest=0x7fffb74092b0, aStateFlags=@0x7fffffffb324: 131088, aStatus=nsresult::NS_OK)
    at /z/stylo/hg-incubator/uriloader/base/nsDocLoader.cpp:1255
#50 0x00007fffe3f277a9 in nsDocLoader::doStopDocumentLoad (this=0x7fffb1630800, request=0x7fffb74092b0, aStatus=nsresult::NS_OK) at /z/stylo/hg-incubator/uriloader/base/nsDocLoader.cpp:840
#51 0x00007fffe3f2626f in nsDocLoader::DocLoaderIsEmpty (this=0x7fffb1630800, aFlushLayout=true) at /z/stylo/hg-incubator/uriloader/base/nsDocLoader.cpp:730
#52 0x00007fffe3f271ac in nsDocLoader::OnStopRequest (this=0x7fffb1630800, aRequest=0x7fffb5e40360, aCtxt=0x0, aStatus=nsresult::NS_OK) at /z/stylo/hg-incubator/uriloader/base/nsDocLoader.cpp:612
#53 0x00007fffe2c4798f in mozilla::net::nsLoadGroup::RemoveRequest (this=0x7fffb1120240, request=0x7fffb5e40360, ctxt=0x0, aStatus=nsresult::NS_OK) at /z/stylo/hg-incubator/netwerk/base/nsLoadGroup.cpp:633
#54 0x00007fffe48a9dd0 in nsDocument::DoUnblockOnload (this=0x7fffb5e2c000) at /z/stylo/hg-incubator/dom/base/nsDocument.cpp:8622
#55 0x00007fffe48a9b8d in nsDocument::UnblockOnload (this=0x7fffb5e2c000, aFireSync=true) at /z/stylo/hg-incubator/dom/base/nsDocument.cpp:8550
#56 0x00007fffe489ab73 in nsDocument::DispatchContentLoadedEvents (this=0x7fffb5e2c000) at /z/stylo/hg-incubator/dom/base/nsDocument.cpp:5058
#57 0x00007fffe4928d1a in mozilla::detail::RunnableMethodArguments<>::applyImpl<nsDocument, void (nsDocument::*)()>(nsDocument*, void (nsDocument::*)(), mozilla::Tuple<>&, mozilla::IndexSequence<>) (o=0x7fffb5e2c000, 
    m=(void (nsDocument::*)(nsDocument * const)) 0x7fffe489a380 <nsDocument::DispatchContentLoadedEvents()>, args=...) at /z/stylo/hg-incubator/obj/dist/include/nsThreadUtils.h:791
#58 0x00007fffe4928c99 in mozilla::detail::RunnableMethodArguments<>::apply<nsDocument, void (nsDocument::*)()>(nsDocument*, void (nsDocument::*)()) (this=0x7fffb63ecbe0, o=0x7fffb5e2c000, 
    m=(void (nsDocument::*)(nsDocument * const)) 0x7fffe489a380 <nsDocument::DispatchContentLoadedEvents()>) at /z/stylo/hg-incubator/obj/dist/include/nsThreadUtils.h:797
#59 0x00007fffe4928b22 in mozilla::detail::RunnableMethodImpl<void (nsDocument::*)(), true, false>::Run (this=0x7fffb63ecba0) at /z/stylo/hg-incubator/obj/dist/include/nsThreadUtils.h:826
#60 0x00007fffe2ad0ca8 in nsThread::ProcessNextEvent (this=0x7fffdfe3d300, aMayWait=false, aResult=0x7fffffffbd4e) at /z/stylo/hg-incubator/xpcom/threads/nsThread.cpp:1213
#61 0x00007fffe2b505fc in NS_ProcessNextEvent (aThread=0x7fffdfe3d300, aMayWait=false) at /z/stylo/hg-incubator/xpcom/glue/nsThreadUtils.cpp:381
#62 0x00007fffe33cb0e9 in mozilla::ipc::MessagePump::Run (this=0x7fffdfe98a80, aDelegate=0x7ffff6bb2410) at /z/stylo/hg-incubator/ipc/glue/MessagePump.cpp:96
#63 0x00007fffe33296c5 in MessageLoop::RunInternal (this=0x7ffff6bb2410) at /z/stylo/hg-incubator/ipc/chromium/src/base/message_loop.cc:232
#64 0x00007fffe3329645 in MessageLoop::RunHandler (this=0x7ffff6bb2410) at /z/stylo/hg-incubator/ipc/chromium/src/base/message_loop.cc:225
#65 0x00007fffe332961d in MessageLoop::Run (this=0x7ffff6bb2410) at /z/stylo/hg-incubator/ipc/chromium/src/base/message_loop.cc:205
#66 0x00007fffe6ad4003 in nsBaseAppShell::Run (this=0x7fffd37e7970) at /z/stylo/hg-incubator/widget/nsBaseAppShell.cpp:156
#67 0x00007fffe7cab192 in nsAppStartup::Run (this=0x7fffd37ef880) at /z/stylo/hg-incubator/toolkit/components/startup/nsAppStartup.cpp:283
#68 0x00007fffe7da48ac in XREMain::XRE_mainRun (this=0x7fffffffc728) at /z/stylo/hg-incubator/toolkit/xre/nsAppRunner.cpp:4485
#69 0x00007fffe7da5396 in XREMain::XRE_main (this=0x7fffffffc728, argc=4, argv=0x7fffffffdc08, aAppData=0x7fffffffc9e8) at /z/stylo/hg-incubator/toolkit/xre/nsAppRunner.cpp:4618
#70 0x00007fffe7da5b6f in XRE_main (argc=4, argv=0x7fffffffdc08, aAppData=0x7fffffffc9e8, aFlags=0) at /z/stylo/hg-incubator/toolkit/xre/nsAppRunner.cpp:4709
#71 0x000000000040633f in do_main (argc=4, argv=0x7fffffffdc08, envp=0x7fffffffdc30, xreDirectory=0x7ffff6b5eb40) at /z/stylo/hg-incubator/browser/app/nsBrowserApp.cpp:328
#72 0x0000000000405a62 in main (argc=4, argv=0x7fffffffdc08, envp=0x7fffffffdc30) at /z/stylo/hg-incubator/browser/app/nsBrowserApp.cpp:461
dom/html/crashtests/453406-1.html (comment 0 backtrace)
editor/libeditor/crashtests/513375-1.xhtml
layout/base/crashtests/366128-1.xhtml
layout/generic/crashtests/407009-1.xhtml
Summary: stylo: dom/html/crashtests/453406-1.html fatally asserts with "primaryFrame (Frame construction should be scheduled, and it takes the correct style for the children, so no need to be here.)" → stylo: several tests fatally assert with "primaryFrame (Frame construction should be scheduled, and it takes the correct style for the children, so no need to be here.)"
Mochitest layout/style/test/test_value_storage.html also hits this assertion.
Incremental restyle.
Flags: needinfo?(bobbyholley)
These appear fixed with the patches in bug 1329854, so I'll land the expectation adjustment together with those patches.
Assignee: nobody → bobbyholley
Depends on: 1329854
Flags: needinfo?(bobbyholley)
(In reply to Bobby Holley (:bholley) (busy with Stylo) from comment #5)
> https://treeherder.mozilla.org/#/
> jobs?repo=try&revision=51525f9576260dbd8657cce076e846ca76e599c4&selectedJob=6
> 8568628

(Ignore the unexpected-pass assertion in that try push, I just mis-merged on the try push and accidentally re-expected an assertion that had been fixed).
https://hg.mozilla.org/mozilla-central/rev/edcf5b3cd731
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla53
You need to log in before you can comment on or make changes to this bug.