Closed Bug 1176449 Opened 7 years ago Closed 7 years ago

ASSERTION: must be in an update, in PresShell::RecordStyleSheetChange

Categories

(Core :: CSS Parsing and Computation, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla47
Tracking Status
firefox41 --- affected
firefox47 --- fixed

People

(Reporter: dbaron, Assigned: mrbkap)

References

Details

Attachments

(1 file)

The following is bug 1089417 comment 88:

(In reply to David Baron [:dbaron] ⏰UTC-4 (busy, returning May 21) from comment #31)
> Created attachment 8528922 [details] [diff] [review]
> patch 2 - Add assertion that RecordStyleSheetChange is called inside an
> update.
> 
> This was just something that seemed worth asserting in the process of
> debugging, since I wanted to see if it was the problem.

Hi,

During the local run of |make mozmill| test suite of C-C thunderbird
by running locally built full DEBUG version of TB, I see many message
as follows.

###!!! ASSERTION: must be in an update: 'mUpdateCount != 0', file /REF-COMM-CENTRAL/comm-central/mozilla/layout/base/nsPresShell.cpp, line 4747

In the latest test log, it appears 176 times.

Since this is from C-C TB, this may not be of much help to track down
the subtle issue in layout, etc., but I still think it is important to
report this since 176 times is not a small number.

I figured out this is the bugzilla entry where this assertion was
inserted for debugging purposes, and so reporting the triggered
assertion here. The patch is the one comment 31.

One typical stack trace from the assertion is as follows.  (I picked
up a test with the stacktrace and that does not have much cluttering
after the initial invocation and finishes without other serious
errors/warnings.  I ran the log through
mozilla/tools/rb/fix_linux_stack.py to replace the numbers to
symbols. This log shows a few assertions repeatedly.)

--- begin excerpt ---
TEST-START | /REF-COMM-CENTRAL/comm-central/mail/test/mozmill/folder-widget/test-message-filters.js | test_customize_toolbar_doesnt_double_get_mail_menu
[20522] WARNING: Enabling vsync compositor: file /REF-COMM-CENTRAL/comm-central/mozilla/gfx/layers/ipc/CompositorParent.cpp, line 678
[20522] WARNING: Enabling vsync compositor: file /REF-COMM-CENTRAL/comm-central/mozilla/gfx/layers/ipc/CompositorParent.cpp, line 678
[20522] WARNING: Enabling vsync compositor: file /REF-COMM-CENTRAL/comm-central/mozilla/gfx/layers/ipc/CompositorParent.cpp, line 678
++DOCSHELL 0x5017b60 == 13 [pid = 20522] [id = 13]
++DOMWINDOW == 34 (0x5019a60) [pid = 20522] [serial = 34] [outer = (nil)]
++DOMWINDOW == 35 (0x501b390) [pid = 20522] [serial = 35] [outer = 0x5019a60]
(debug) PR_SetError(code=0xffffe8c2, osErr= 2 (No such file or directory)
[20522] ###!!! ASSERTION: must be in an update: 'mUpdateCount != 0', file /REF-COMM-CENTRAL/comm-central/mozilla/layout/base/nsPresShell.cpp, line 4747
#01: PresShell::RecordStyleSheetChange(nsIStyleSheet*) (/REF-COMM-CENTRAL/comm-central/mozilla/layout/base/nsPresShell.cpp:4749 (discriminator 1))
#02: PresShell::StyleSheetAdded(nsIDocument*, nsIStyleSheet*, bool) (/REF-COMM-CENTRAL/comm-central/mozilla/layout/base/nsPresShell.cpp:4775)
#03: nsDocument::NotifyStyleSheetAdded(nsIStyleSheet*, bool) (/REF-OBJ-DIR/objdir-tb3/dom/base/../../dist/include/nsTObserverArray.h:336 (discriminator 1))
#04: nsDocument::AddStyleSheet(nsIStyleSheet*) (/REF-COMM-CENTRAL/comm-central/mozilla/dom/base/nsDocument.cpp:4293)
#05: mozilla::dom::XULDocument::DoneWalking() (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/XULDocument.cpp:3021)
#06: mozilla::dom::XULDocument::ResumeWalk() (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/XULDocument.cpp:3006)
#07: mozilla::dom::XULDocument::OnPrototypeLoadDone(bool) (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/XULDocument.cpp:588)
#08: mozilla::dom::XULDocument::EndLoad() (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/XULDocument.cpp:564)
#09: XULContentSinkImpl::DidBuildModel(bool) (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/nsXULContentSink.cpp:232)
#10: nsParser::DidBuildModel(nsresult) (/REF-COMM-CENTRAL/comm-central/mozilla/parser/htmlparser/nsParser.cpp:910)
#11: nsParser::ResumeParse(bool, bool, bool) (/REF-COMM-CENTRAL/comm-central/mozilla/parser/htmlparser/nsParser.cpp:1509)
#12: nsParser::OnStopRequest(nsIRequest*, nsISupports*, nsresult) (/REF-COMM-CENTRAL/comm-central/mozilla/parser/htmlparser/nsParser.cpp:1879)
#13: nsBaseChannel::OnStopRequest(nsIRequest*, nsISupports*, nsresult) (/REF-COMM-CENTRAL/comm-central/mozilla/netwerk/base/nsBaseChannel.h:234)
#14: nsInputStreamPump::OnStateStop() (/REF-COMM-CENTRAL/comm-central/mozilla/netwerk/base/nsInputStreamPump.cpp:718)
#15: nsInputStreamPump::OnInputStreamReady(nsIAsyncInputStream*) (/REF-COMM-CENTRAL/comm-central/mozilla/netwerk/base/nsInputStreamPump.cpp:436)
#16: nsInputStreamReadyEvent::Run() (/REF-COMM-CENTRAL/comm-central/mozilla/xpcom/io/nsStreamUtils.cpp:93)
#17: nsThread::ProcessNextEvent(bool, bool*) (/REF-COMM-CENTRAL/comm-central/mozilla/xpcom/threads/nsThread.cpp:846)
#18: NS_InvokeByIndex (/REF-COMM-CENTRAL/comm-central/mozilla/xpcom/reflect/xptcall/md/unix/xptcinvoke_x86_64_unix.cpp:178)
#19: XPCWrappedNative::CallMethod(XPCCallContext&, XPCWrappedNative::CallMode) (/REF-COMM-CENTRAL/comm-central/mozilla/js/xpconnect/src/XPCWrappedNative.cpp:1417)
#20: XPC_WN_CallMethod(JSContext*, unsigned int, JS::Value*) (/REF-COMM-CENTRAL/comm-central/mozilla/js/xpconnect/src/XPCWrappedNativeJSOps.cpp:1141)
#21: ??? (???:???)
[20522] ###!!! ASSERTION: must be in an update: 'mUpdateCount != 0', file /REF-COMM-CENTRAL/comm-central/mozilla/layout/base/nsPresShell.cpp, line 4747
#01: PresShell::RecordStyleSheetChange(nsIStyleSheet*) (/REF-COMM-CENTRAL/comm-central/mozilla/layout/base/nsPresShell.cpp:4749 (discriminator 1))
#02: PresShell::StyleSheetAdded(nsIDocument*, nsIStyleSheet*, bool) (/REF-COMM-CENTRAL/comm-central/mozilla/layout/base/nsPresShell.cpp:4775)
#03: nsDocument::NotifyStyleSheetAdded(nsIStyleSheet*, bool) (/REF-OBJ-DIR/objdir-tb3/dom/base/../../dist/include/nsTObserverArray.h:336 (discriminator 1))
#04: nsDocument::AddStyleSheet(nsIStyleSheet*) (/REF-COMM-CENTRAL/comm-central/mozilla/dom/base/nsDocument.cpp:4293)
#05: mozilla::dom::XULDocument::DoneWalking() (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/XULDocument.cpp:3021)
#06: mozilla::dom::XULDocument::ResumeWalk() (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/XULDocument.cpp:3006)
#07: mozilla::dom::XULDocument::OnPrototypeLoadDone(bool) (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/XULDocument.cpp:588)
#08: mozilla::dom::XULDocument::EndLoad() (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/XULDocument.cpp:564)
#09: XULContentSinkImpl::DidBuildModel(bool) (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/nsXULContentSink.cpp:232)
#10: nsParser::DidBuildModel(nsresult) (/REF-COMM-CENTRAL/comm-central/mozilla/parser/htmlparser/nsParser.cpp:910)
#11: nsParser::ResumeParse(bool, bool, bool) (/REF-COMM-CENTRAL/comm-central/mozilla/parser/htmlparser/nsParser.cpp:1509)
#12: nsParser::OnStopRequest(nsIRequest*, nsISupports*, nsresult) (/REF-COMM-CENTRAL/comm-central/mozilla/parser/htmlparser/nsParser.cpp:1879)
#13: nsBaseChannel::OnStopRequest(nsIRequest*, nsISupports*, nsresult) (/REF-COMM-CENTRAL/comm-central/mozilla/netwerk/base/nsBaseChannel.h:234)
#14: nsInputStreamPump::OnStateStop() (/REF-COMM-CENTRAL/comm-central/mozilla/netwerk/base/nsInputStreamPump.cpp:718)
#15: nsInputStreamPump::OnInputStreamReady(nsIAsyncInputStream*) (/REF-COMM-CENTRAL/comm-central/mozilla/netwerk/base/nsInputStreamPump.cpp:436)
#16: nsInputStreamReadyEvent::Run() (/REF-COMM-CENTRAL/comm-central/mozilla/xpcom/io/nsStreamUtils.cpp:93)
#17: nsThread::ProcessNextEvent(bool, bool*) (/REF-COMM-CENTRAL/comm-central/mozilla/xpcom/threads/nsThread.cpp:846)
#18: NS_InvokeByIndex (/REF-COMM-CENTRAL/comm-central/mozilla/xpcom/reflect/xptcall/md/unix/xptcinvoke_x86_64_unix.cpp:178)
#19: XPCWrappedNative::CallMethod(XPCCallContext&, XPCWrappedNative::CallMode) (/REF-COMM-CENTRAL/comm-central/mozilla/js/xpconnect/src/XPCWrappedNative.cpp:1417)
#20: XPC_WN_CallMethod(JSContext*, unsigned int, JS::Value*) (/REF-COMM-CENTRAL/comm-central/mozilla/js/xpconnect/src/XPCWrappedNativeJSOps.cpp:1141)
#21: ??? (???:???)
[20522] ###!!! ASSERTION: must be in an update: 'mUpdateCount != 0', file /REF-COMM-CENTRAL/comm-central/mozilla/layout/base/nsPresShell.cpp, line 4747
#01: PresShell::RecordStyleSheetChange(nsIStyleSheet*) (/REF-COMM-CENTRAL/comm-central/mozilla/layout/base/nsPresShell.cpp:4749 (discriminator 1))
#02: PresShell::StyleSheetAdded(nsIDocument*, nsIStyleSheet*, bool) (/REF-COMM-CENTRAL/comm-central/mozilla/layout/base/nsPresShell.cpp:4775)
#03: nsDocument::NotifyStyleSheetAdded(nsIStyleSheet*, bool) (/REF-OBJ-DIR/objdir-tb3/dom/base/../../dist/include/nsTObserverArray.h:336 (discriminator 1))
#04: nsDocument::AddStyleSheet(nsIStyleSheet*) (/REF-COMM-CENTRAL/comm-central/mozilla/dom/base/nsDocument.cpp:4293)
#05: mozilla::dom::XULDocument::DoneWalking() (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/XULDocument.cpp:3021)
#06: mozilla::dom::XULDocument::ResumeWalk() (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/XULDocument.cpp:3006)
#07: mozilla::dom::XULDocument::OnPrototypeLoadDone(bool) (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/XULDocument.cpp:588)
#08: mozilla::dom::XULDocument::EndLoad() (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/XULDocument.cpp:564)
#09: XULContentSinkImpl::DidBuildModel(bool) (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/nsXULContentSink.cpp:232)
#10: nsParser::DidBuildModel(nsresult) (/REF-COMM-CENTRAL/comm-central/mozilla/parser/htmlparser/nsParser.cpp:910)
#11: nsParser::ResumeParse(bool, bool, bool) (/REF-COMM-CENTRAL/comm-central/mozilla/parser/htmlparser/nsParser.cpp:1509)
#12: nsParser::OnStopRequest(nsIRequest*, nsISupports*, nsresult) (/REF-COMM-CENTRAL/comm-central/mozilla/parser/htmlparser/nsParser.cpp:1879)
#13: nsBaseChannel::OnStopRequest(nsIRequest*, nsISupports*, nsresult) (/REF-COMM-CENTRAL/comm-central/mozilla/netwerk/base/nsBaseChannel.h:234)
#14: nsInputStreamPump::OnStateStop() (/REF-COMM-CENTRAL/comm-central/mozilla/netwerk/base/nsInputStreamPump.cpp:718)
#15: nsInputStreamPump::OnInputStreamReady(nsIAsyncInputStream*) (/REF-COMM-CENTRAL/comm-central/mozilla/netwerk/base/nsInputStreamPump.cpp:436)
#16: nsInputStreamReadyEvent::Run() (/REF-COMM-CENTRAL/comm-central/mozilla/xpcom/io/nsStreamUtils.cpp:93)
#17: nsThread::ProcessNextEvent(bool, bool*) (/REF-COMM-CENTRAL/comm-central/mozilla/xpcom/threads/nsThread.cpp:846)
#18: NS_InvokeByIndex (/REF-COMM-CENTRAL/comm-central/mozilla/xpcom/reflect/xptcall/md/unix/xptcinvoke_x86_64_unix.cpp:178)
#19: XPCWrappedNative::CallMethod(XPCCallContext&, XPCWrappedNative::CallMode) (/REF-COMM-CENTRAL/comm-central/mozilla/js/xpconnect/src/XPCWrappedNative.cpp:1417)
#20: XPC_WN_CallMethod(JSContext*, unsigned int, JS::Value*) (/REF-COMM-CENTRAL/comm-central/mozilla/js/xpconnect/src/XPCWrappedNativeJSOps.cpp:1141)
#21: ??? (???:???)
[20522] ###!!! ASSERTION: must be in an update: 'mUpdateCount != 0', file /REF-COMM-CENTRAL/comm-central/mozilla/layout/base/nsPresShell.cpp, line 4747
#01: PresShell::RecordStyleSheetChange(nsIStyleSheet*) (/REF-COMM-CENTRAL/comm-central/mozilla/layout/base/nsPresShell.cpp:4749 (discriminator 1))
#02: PresShell::StyleSheetAdded(nsIDocument*, nsIStyleSheet*, bool) (/REF-COMM-CENTRAL/comm-central/mozilla/layout/base/nsPresShell.cpp:4775)
#03: nsDocument::NotifyStyleSheetAdded(nsIStyleSheet*, bool) (/REF-OBJ-DIR/objdir-tb3/dom/base/../../dist/include/nsTObserverArray.h:336 (discriminator 1))
#04: nsDocument::AddStyleSheet(nsIStyleSheet*) (/REF-COMM-CENTRAL/comm-central/mozilla/dom/base/nsDocument.cpp:4293)
#05: mozilla::dom::XULDocument::DoneWalking() (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/XULDocument.cpp:3021)
#06: mozilla::dom::XULDocument::ResumeWalk() (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/XULDocument.cpp:3006)
#07: mozilla::dom::XULDocument::OnPrototypeLoadDone(bool) (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/XULDocument.cpp:588)
#08: mozilla::dom::XULDocument::EndLoad() (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/XULDocument.cpp:564)
#09: XULContentSinkImpl::DidBuildModel(bool) (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/nsXULContentSink.cpp:232)
#10: nsParser::DidBuildModel(nsresult) (/REF-COMM-CENTRAL/comm-central/mozilla/parser/htmlparser/nsParser.cpp:910)
#11: nsParser::ResumeParse(bool, bool, bool) (/REF-COMM-CENTRAL/comm-central/mozilla/parser/htmlparser/nsParser.cpp:1509)
#12: nsParser::OnStopRequest(nsIRequest*, nsISupports*, nsresult) (/REF-COMM-CENTRAL/comm-central/mozilla/parser/htmlparser/nsParser.cpp:1879)
#13: nsBaseChannel::OnStopRequest(nsIRequest*, nsISupports*, nsresult) (/REF-COMM-CENTRAL/comm-central/mozilla/netwerk/base/nsBaseChannel.h:234)
#14: nsInputStreamPump::OnStateStop() (/REF-COMM-CENTRAL/comm-central/mozilla/netwerk/base/nsInputStreamPump.cpp:718)
#15: nsInputStreamPump::OnInputStreamReady(nsIAsyncInputStream*) (/REF-COMM-CENTRAL/comm-central/mozilla/netwerk/base/nsInputStreamPump.cpp:436)
#16: nsInputStreamReadyEvent::Run() (/REF-COMM-CENTRAL/comm-central/mozilla/xpcom/io/nsStreamUtils.cpp:93)
#17: nsThread::ProcessNextEvent(bool, bool*) (/REF-COMM-CENTRAL/comm-central/mozilla/xpcom/threads/nsThread.cpp:846)
#18: NS_InvokeByIndex (/REF-COMM-CENTRAL/comm-central/mozilla/xpcom/reflect/xptcall/md/unix/xptcinvoke_x86_64_unix.cpp:178)
#19: XPCWrappedNative::CallMethod(XPCCallContext&, XPCWrappedNative::CallMode) (/REF-COMM-CENTRAL/comm-central/mozilla/js/xpconnect/src/XPCWrappedNative.cpp:1417)
#20: XPC_WN_CallMethod(JSContext*, unsigned int, JS::Value*) (/REF-COMM-CENTRAL/comm-central/mozilla/js/xpconnect/src/XPCWrappedNativeJSOps.cpp:1141)
#21: ??? (???:???)
[20522] ###!!! ASSERTION: must be in an update: 'mUpdateCount != 0', file /REF-COMM-CENTRAL/comm-central/mozilla/layout/base/nsPresShell.cpp, line 4747
#01: PresShell::RecordStyleSheetChange(nsIStyleSheet*) (/REF-COMM-CENTRAL/comm-central/mozilla/layout/base/nsPresShell.cpp:4749 (discriminator 1))
#02: PresShell::StyleSheetAdded(nsIDocument*, nsIStyleSheet*, bool) (/REF-COMM-CENTRAL/comm-central/mozilla/layout/base/nsPresShell.cpp:4775)
#03: nsDocument::NotifyStyleSheetAdded(nsIStyleSheet*, bool) (/REF-OBJ-DIR/objdir-tb3/dom/base/../../dist/include/nsTObserverArray.h:336 (discriminator 1))
#04: nsDocument::AddStyleSheet(nsIStyleSheet*) (/REF-COMM-CENTRAL/comm-central/mozilla/dom/base/nsDocument.cpp:4293)
#05: mozilla::dom::XULDocument::DoneWalking() (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/XULDocument.cpp:3021)
#06: mozilla::dom::XULDocument::ResumeWalk() (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/XULDocument.cpp:3006)
#07: mozilla::dom::XULDocument::OnPrototypeLoadDone(bool) (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/XULDocument.cpp:588)
#08: mozilla::dom::XULDocument::EndLoad() (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/XULDocument.cpp:564)
#09: XULContentSinkImpl::DidBuildModel(bool) (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/nsXULContentSink.cpp:232)
#10: nsParser::DidBuildModel(nsresult) (/REF-COMM-CENTRAL/comm-central/mozilla/parser/htmlparser/nsParser.cpp:910)
#11: nsParser::ResumeParse(bool, bool, bool) (/REF-COMM-CENTRAL/comm-central/mozilla/parser/htmlparser/nsParser.cpp:1509)
#12: nsParser::OnStopRequest(nsIRequest*, nsISupports*, nsresult) (/REF-COMM-CENTRAL/comm-central/mozilla/parser/htmlparser/nsParser.cpp:1879)
#13: nsBaseChannel::OnStopRequest(nsIRequest*, nsISupports*, nsresult) (/REF-COMM-CENTRAL/comm-central/mozilla/netwerk/base/nsBaseChannel.h:234)
#14: nsInputStreamPump::OnStateStop() (/REF-COMM-CENTRAL/comm-central/mozilla/netwerk/base/nsInputStreamPump.cpp:718)
#15: nsInputStreamPump::OnInputStreamReady(nsIAsyncInputStream*) (/REF-COMM-CENTRAL/comm-central/mozilla/netwerk/base/nsInputStreamPump.cpp:436)
#16: nsInputStreamReadyEvent::Run() (/REF-COMM-CENTRAL/comm-central/mozilla/xpcom/io/nsStreamUtils.cpp:93)
#17: nsThread::ProcessNextEvent(bool, bool*) (/REF-COMM-CENTRAL/comm-central/mozilla/xpcom/threads/nsThread.cpp:846)
#18: NS_InvokeByIndex (/REF-COMM-CENTRAL/comm-central/mozilla/xpcom/reflect/xptcall/md/unix/xptcinvoke_x86_64_unix.cpp:178)
#19: XPCWrappedNative::CallMethod(XPCCallContext&, XPCWrappedNative::CallMode) (/REF-COMM-CENTRAL/comm-central/mozilla/js/xpconnect/src/XPCWrappedNative.cpp:1417)
#20: XPC_WN_CallMethod(JSContext*, unsigned int, JS::Value*) (/REF-COMM-CENTRAL/comm-central/mozilla/js/xpconnect/src/XPCWrappedNativeJSOps.cpp:1141)
#21: ??? (???:???)
[20522] ###!!! ASSERTION: must be in an update: 'mUpdateCount != 0', file /REF-COMM-CENTRAL/comm-central/mozilla/layout/base/nsPresShell.cpp, line 4747
#01: PresShell::RecordStyleSheetChange(nsIStyleSheet*) (/REF-COMM-CENTRAL/comm-central/mozilla/layout/base/nsPresShell.cpp:4749 (discriminator 1))
#02: PresShell::StyleSheetAdded(nsIDocument*, nsIStyleSheet*, bool) (/REF-COMM-CENTRAL/comm-central/mozilla/layout/base/nsPresShell.cpp:4775)
#03: nsDocument::NotifyStyleSheetAdded(nsIStyleSheet*, bool) (/REF-OBJ-DIR/objdir-tb3/dom/base/../../dist/include/nsTObserverArray.h:336 (discriminator 1))
#04: nsDocument::AddStyleSheet(nsIStyleSheet*) (/REF-COMM-CENTRAL/comm-central/mozilla/dom/base/nsDocument.cpp:4293)
#05: mozilla::dom::XULDocument::DoneWalking() (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/XULDocument.cpp:3021)
#06: mozilla::dom::XULDocument::ResumeWalk() (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/XULDocument.cpp:3006)
#07: mozilla::dom::XULDocument::OnPrototypeLoadDone(bool) (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/XULDocument.cpp:588)
#08: mozilla::dom::XULDocument::EndLoad() (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/XULDocument.cpp:564)
#09: XULContentSinkImpl::DidBuildModel(bool) (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/nsXULContentSink.cpp:232)
#10: nsParser::DidBuildModel(nsresult) (/REF-COMM-CENTRAL/comm-central/mozilla/parser/htmlparser/nsParser.cpp:910)
#11: nsParser::ResumeParse(bool, bool, bool) (/REF-COMM-CENTRAL/comm-central/mozilla/parser/htmlparser/nsParser.cpp:1509)
#12: nsParser::OnStopRequest(nsIRequest*, nsISupports*, nsresult) (/REF-COMM-CENTRAL/comm-central/mozilla/parser/htmlparser/nsParser.cpp:1879)
#13: nsBaseChannel::OnStopRequest(nsIRequest*, nsISupports*, nsresult) (/REF-COMM-CENTRAL/comm-central/mozilla/netwerk/base/nsBaseChannel.h:234)
#14: nsInputStreamPump::OnStateStop() (/REF-COMM-CENTRAL/comm-central/mozilla/netwerk/base/nsInputStreamPump.cpp:718)
#15: nsInputStreamPump::OnInputStreamReady(nsIAsyncInputStream*) (/REF-COMM-CENTRAL/comm-central/mozilla/netwerk/base/nsInputStreamPump.cpp:436)
#16: nsInputStreamReadyEvent::Run() (/REF-COMM-CENTRAL/comm-central/mozilla/xpcom/io/nsStreamUtils.cpp:93)
#17: nsThread::ProcessNextEvent(bool, bool*) (/REF-COMM-CENTRAL/comm-central/mozilla/xpcom/threads/nsThread.cpp:846)
#18: NS_InvokeByIndex (/REF-COMM-CENTRAL/comm-central/mozilla/xpcom/reflect/xptcall/md/unix/xptcinvoke_x86_64_unix.cpp:178)
#19: XPCWrappedNative::CallMethod(XPCCallContext&, XPCWrappedNative::CallMode) (/REF-COMM-CENTRAL/comm-central/mozilla/js/xpconnect/src/XPCWrappedNative.cpp:1417)
#20: XPC_WN_CallMethod(JSContext*, unsigned int, JS::Value*) (/REF-COMM-CENTRAL/comm-central/mozilla/js/xpconnect/src/XPCWrappedNativeJSOps.cpp:1141)
#21: ??? (???:???)
[20522] ###!!! ASSERTION: must be in an update: 'mUpdateCount != 0', file /REF-COMM-CENTRAL/comm-central/mozilla/layout/base/nsPresShell.cpp, line 4747
#01: PresShell::RecordStyleSheetChange(nsIStyleSheet*) (/REF-COMM-CENTRAL/comm-central/mozilla/layout/base/nsPresShell.cpp:4749 (discriminator 1))
#02: PresShell::StyleSheetAdded(nsIDocument*, nsIStyleSheet*, bool) (/REF-COMM-CENTRAL/comm-central/mozilla/layout/base/nsPresShell.cpp:4775)
#03: nsDocument::NotifyStyleSheetAdded(nsIStyleSheet*, bool) (/REF-OBJ-DIR/objdir-tb3/dom/base/../../dist/include/nsTObserverArray.h:336 (discriminator 1))
#04: nsDocument::AddStyleSheet(nsIStyleSheet*) (/REF-COMM-CENTRAL/comm-central/mozilla/dom/base/nsDocument.cpp:4293)
#05: mozilla::dom::XULDocument::DoneWalking() (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/XULDocument.cpp:3021)
#06: mozilla::dom::XULDocument::ResumeWalk() (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/XULDocument.cpp:3006)
#07: mozilla::dom::XULDocument::OnPrototypeLoadDone(bool) (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/XULDocument.cpp:588)
#08: mozilla::dom::XULDocument::EndLoad() (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/XULDocument.cpp:564)
#09: XULContentSinkImpl::DidBuildModel(bool) (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/nsXULContentSink.cpp:232)
#10: nsParser::DidBuildModel(nsresult) (/REF-COMM-CENTRAL/comm-central/mozilla/parser/htmlparser/nsParser.cpp:910)
#11: nsParser::ResumeParse(bool, bool, bool) (/REF-COMM-CENTRAL/comm-central/mozilla/parser/htmlparser/nsParser.cpp:1509)
#12: nsParser::OnStopRequest(nsIRequest*, nsISupports*, nsresult) (/REF-COMM-CENTRAL/comm-central/mozilla/parser/htmlparser/nsParser.cpp:1879)
#13: nsBaseChannel::OnStopRequest(nsIRequest*, nsISupports*, nsresult) (/REF-COMM-CENTRAL/comm-central/mozilla/netwerk/base/nsBaseChannel.h:234)
#14: nsInputStreamPump::OnStateStop() (/REF-COMM-CENTRAL/comm-central/mozilla/netwerk/base/nsInputStreamPump.cpp:718)
#15: nsInputStreamPump::OnInputStreamReady(nsIAsyncInputStream*) (/REF-COMM-CENTRAL/comm-central/mozilla/netwerk/base/nsInputStreamPump.cpp:436)
#16: nsInputStreamReadyEvent::Run() (/REF-COMM-CENTRAL/comm-central/mozilla/xpcom/io/nsStreamUtils.cpp:93)
#17: nsThread::ProcessNextEvent(bool, bool*) (/REF-COMM-CENTRAL/comm-central/mozilla/xpcom/threads/nsThread.cpp:846)
#18: NS_InvokeByIndex (/REF-COMM-CENTRAL/comm-central/mozilla/xpcom/reflect/xptcall/md/unix/xptcinvoke_x86_64_unix.cpp:178)
#19: XPCWrappedNative::CallMethod(XPCCallContext&, XPCWrappedNative::CallMode) (/REF-COMM-CENTRAL/comm-central/mozilla/js/xpconnect/src/XPCWrappedNative.cpp:1417)
#20: XPC_WN_CallMethod(JSContext*, unsigned int, JS::Value*) (/REF-COMM-CENTRAL/comm-central/mozilla/js/xpconnect/src/XPCWrappedNativeJSOps.cpp:1141)
#21: ??? (???:???)
[20522] ###!!! ASSERTION: must be in an update: 'mUpdateCount != 0', file /REF-COMM-CENTRAL/comm-central/mozilla/layout/base/nsPresShell.cpp, line 4747
#01: PresShell::RecordStyleSheetChange(nsIStyleSheet*) (/REF-COMM-CENTRAL/comm-central/mozilla/layout/base/nsPresShell.cpp:4749 (discriminator 1))
#02: PresShell::StyleSheetAdded(nsIDocument*, nsIStyleSheet*, bool) (/REF-COMM-CENTRAL/comm-central/mozilla/layout/base/nsPresShell.cpp:4775)
#03: nsDocument::NotifyStyleSheetAdded(nsIStyleSheet*, bool) (/REF-OBJ-DIR/objdir-tb3/dom/base/../../dist/include/nsTObserverArray.h:336 (discriminator 1))
#04: nsDocument::AddStyleSheet(nsIStyleSheet*) (/REF-COMM-CENTRAL/comm-central/mozilla/dom/base/nsDocument.cpp:4293)
#05: mozilla::dom::XULDocument::DoneWalking() (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/XULDocument.cpp:3021)
#06: mozilla::dom::XULDocument::ResumeWalk() (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/XULDocument.cpp:3006)
#07: mozilla::dom::XULDocument::OnPrototypeLoadDone(bool) (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/XULDocument.cpp:588)
#08: mozilla::dom::XULDocument::EndLoad() (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/XULDocument.cpp:564)
#09: XULContentSinkImpl::DidBuildModel(bool) (/REF-COMM-CENTRAL/comm-central/mozilla/dom/xul/nsXULContentSink.cpp:232)
#10: nsParser::DidBuildModel(nsresult) (/REF-COMM-CENTRAL/comm-central/mozilla/parser/htmlparser/nsParser.cpp:910)
#11: nsParser::ResumeParse(bool, bool, bool) (/REF-COMM-CENTRAL/comm-central/mozilla/parser/htmlparser/nsParser.cpp:1509)
#12: nsParser::OnStopRequest(nsIRequest*, nsISupports*, nsresult) (/REF-COMM-CENTRAL/comm-central/mozilla/parser/htmlparser/nsParser.cpp:1879)
#13: nsBaseChannel::OnStopRequest(nsIRequest*, nsISupports*, nsresult) (/REF-COMM-CENTRAL/comm-central/mozilla/netwerk/base/nsBaseChannel.h:234)
#14: nsInputStreamPump::OnStateStop() (/REF-COMM-CENTRAL/comm-central/mozilla/netwerk/base/nsInputStreamPump.cpp:718)
#15: nsInputStreamPump::OnInputStreamReady(nsIAsyncInputStream*) (/REF-COMM-CENTRAL/comm-central/mozilla/netwerk/base/nsInputStreamPump.cpp:436)
#16: nsInputStreamReadyEvent::Run() (/REF-COMM-CENTRAL/comm-central/mozilla/xpcom/io/nsStreamUtils.cpp:93)
#17: nsThread::ProcessNextEvent(bool, bool*) (/REF-COMM-CENTRAL/comm-central/mozilla/xpcom/threads/nsThread.cpp:846)
#18: NS_InvokeByIndex (/REF-COMM-CENTRAL/comm-central/mozilla/xpcom/reflect/xptcall/md/unix/xptcinvoke_x86_64_unix.cpp:178)
#19: XPCWrappedNative::CallMethod(XPCCallContext&, XPCWrappedNative::CallMode) (/REF-COMM-CENTRAL/comm-central/mozilla/js/xpconnect/src/XPCWrappedNative.cpp:1417)
#20: XPC_WN_CallMethod(JSContext*, unsigned int, JS::Value*) (/REF-COMM-CENTRAL/comm-central/mozilla/js/xpconnect/src/XPCWrappedNativeJSOps.cpp:1141)
#21: ??? (???:???)
(debug) nsresultForErrno(int aErr = 2 [No such file or directory])
(debug) nsresultForErrno(int aErr = 2 [No such file or directory])
(debug) nsresultForErrno(int aErr = 2 [No such file or directory])
(debug) nsresultForErrno(int aErr = 2 [No such file or directory])
(debug) nsresultForErrno(int aErr = 2 [No such file or directory])
(debug) nsresultForErrno(int aErr = 2 [No such file or directory])
(debug) nsresultForErrno(int aErr = 2 [No such file or directory])
(debug) nsresultForErrno(int aErr = 2 [No such file or directory])
(debug) nsresultForErrno(int aErr = 2 [No such file or directory])
(debug) nsresultForErrno(int aErr = 2 [No such file or directory])
(debug) nsresultForErrno(int aErr = 2 [No such file or directory])
(debug) nsresultForErrno(int aErr = 2 [No such file or directory])
(debug) nsresultForErrno(int aErr = 2 [No such file or directory])
(debug) nsresultForErrno(int aErr = 2 [No such file or directory])
(debug) nsresultForErrno(int aErr = 2 [No such file or directory])
(debug) nsresultForErrno(int aErr = 2 [No such file or directory])
(debug) nsresultForErrno(int aErr = 2 [No such file or directory])
(debug) nsresultForErrno(int aErr = 2 [No such file or directory])
[20522] WARNING: Enabling vsync compositor: file /REF-COMM-CENTRAL/comm-central/mozilla/gfx/layers/ipc/CompositorParent.cpp, line 678
(debug) PR_SetError(code=0xffffe892, osErr= 11 (Resource temporarily unavailable)
(debug) PR_SetError(code=0xffffe892, osErr= 11 (Resource temporarily unavailable)
(debug) PR_SetError(code=0xffffe892, osErr= 11 (Resource temporarily unavailable)
(debug) PR_SetError(code=0xffffe892, osErr= 11 (Resource temporarily unavailable)
[20522] WARNING: Enabling vsync compositor: file /REF-COMM-CENTRAL/comm-central/mozilla/gfx/layers/ipc/CompositorParent.cpp, line 678
[20522] WARNING: Enabling vsync compositor: file /REF-COMM-CENTRAL/comm-central/mozilla/gfx/layers/ipc/CompositorParent.cpp, line 678
TEST-PASS | /REF-COMM-CENTRAL/comm-central/mail/test/mozmill/folder-widget/test-message-filters.js | test-message-filters.js::test_customize_toolbar_doesnt_double_get_mail_menu
TEST-START | /REF-COMM-CENTRAL/comm-central/mail/test/mozmill/folder-widget/test-message-filters.js | test_a

I could try to figure out what stylesheet is added, etc.  I suspect TB
only tries to show its greeting screen from the TB web or something after a startup, but of course, there may be other situations where the assertion is triggered.

Since this happens during local |make mozmill| test run,
I think this is highly repeatable. At least, this happens across many small tests, and so the symptom will be triggered at least in a few of them even if this is timing-related.
(176 times are enough to assure us that a few will occur.)

TIA
Attached patch Possible patchSplinter Review
With this patch applied, I no longer assert on startup.
Attachment #8717191 - Flags: review?(dbaron)
Assignee: nobody → mrbkap
Attachment #8717191 - Flags: review?(dbaron) → review+
Keywords: checkin-needed
https://hg.mozilla.org/mozilla-central/rev/d7a8f54d6f6b
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla47
You need to log in before you can comment on or make changes to this bug.