Closed Bug 1172844 Opened 10 years ago Closed 1 year ago

Nightly crash when running it as |./mach run -P|

Categories

(Core :: General, defect)

x86_64
macOS
defect

Tracking

()

RESOLVED WORKSFORME
Tracking Status
firefox41 --- affected

People

(Reporter: noemi, Unassigned)

Details

Attachments

(1 file)

Crash when running NightlyDebug through |./mach run -P| with today's (6/9) master build, please see below the corresponding traces: MacBook-Pro-de-soporte:mozilla-central noef$ ./mach run -P 0:00.23 /Users/noef/Documents/mozilla-central/obj-dir-desktop/dist/NightlyDebug.app/Contents/MacOS/firefox -P -no-remote -foreground [12743] WARNING: '!compMgr', file /Users/noef/Documents/mozilla-central/xpcom/glue/nsComponentManagerUtils.cpp, line 63 Assertion failure: SingletonExists(), at ../dist/include/gfxPrefs.h:208 #01: nsWindowWatcher::CalculateChromeFlags(nsIDOMWindow*, char const*, bool, bool, bool, bool, bool)[/Users/noef/Documents/mozilla-central/obj-dir-desktop/dist/NightlyDebug.app/Contents/MacOS/XUL +0x30d02e2] #02: nsWindowWatcher::OpenWindowInternal(nsIDOMWindow*, char const*, char const*, char const*, bool, bool, bool, nsITabParent*, nsIArray*, nsIDOMWindow**)[/Users/noef/Documents/mozilla-central/obj-dir-desktop/dist/NightlyDebug.app/Contents/MacOS/XUL +0x30ccafc] #03: nsWindowWatcher::OpenWindow(nsIDOMWindow*, char const*, char const*, char const*, nsISupports*, nsIDOMWindow**)[/Users/noef/Documents/mozilla-central/obj-dir-desktop/dist/NightlyDebug.app/Contents/MacOS/XUL +0x30cbc7b] #04: ShowProfileManager(nsIToolkitProfileService*, nsINativeAppSupport*)[/Users/noef/Documents/mozilla-central/obj-dir-desktop/dist/NightlyDebug.app/Contents/MacOS/XUL +0x3455a31] #05: XREMain::XRE_mainStartup(bool*)[/Users/noef/Documents/mozilla-central/obj-dir-desktop/dist/NightlyDebug.app/Contents/MacOS/XUL +0x3451189] #06: XREMain::XRE_main(int, char**, nsXREAppData const*)[/Users/noef/Documents/mozilla-central/obj-dir-desktop/dist/NightlyDebug.app/Contents/MacOS/XUL +0x34545a6] #07: XRE_main[/Users/noef/Documents/mozilla-central/obj-dir-desktop/dist/NightlyDebug.app/Contents/MacOS/XUL +0x3454a7b] #08: main[/Users/noef/Documents/mozilla-central/obj-dir-desktop/dist/NightlyDebug.app/Contents/MacOS/firefox +0x216b]
Component: DOM → General
How are we managing to get to OpenWindow without having set up the prefs stuff?
Flags: needinfo?(benjamin)
What is "the prefs stuff"? This is the profile manager window, so there is no profile (yet, and there won't be in this configuration).
Flags: needinfo?(benjamin)
Ah, I see. And in any case this is the "gfxPrefs" stuff. Noemí, which actual line in CalculateChromeFlags does this assert trigger on?
Flags: needinfo?(noemi.freiredecarlos)
Hope it helps: (lldb) bt * thread #1: tid = 0x101723, 0x0000000103d73709 XUL`mozilla::widget::GfxInfoBase::GetFeatureStatus(int, int*) [inlined] gfxPrefs::BlocklistAll() + 78 at gfxPrefs.h:208, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0x0) * frame #0: 0x0000000103d73709 XUL`mozilla::widget::GfxInfoBase::GetFeatureStatus(int, int*) [inlined] gfxPrefs::BlocklistAll() + 78 at gfxPrefs.h:208 frame #1: 0x0000000103d736bb XUL`mozilla::widget::GfxInfoBase::GetFeatureStatus(this=<unavailable>, aFeature=5, aStatus=<unavailable>) + 1963 at GfxInfoBase.cpp:670 frame #2: 0x000000010495fa2e XUL`mozilla::BrowserTabsRemoteAutostart() + 430 at nsAppRunner.cpp:4614 frame #3: 0x00000001045e32e2 XUL`nsWindowWatcher::CalculateChromeFlags(aParent=0x0000000000000000, aFeatures=0x00007fff5fbfeca0, aFeaturesSpecified=<unavailable>, aDialog=true, aChromeURL=true, aHasChromeParent=true, aOpenedFromRemoteTab=<unavailable>) + 386 at nsWindowWatcher.cpp:1530 frame #4: 0x00000001045dfafc XUL`nsWindowWatcher::OpenWindowInternal(this=0x000000010f2e4ac0, aParent=<unavailable>, aUrl=<unavailable>, aName=<unavailable>, aFeatures=<unavailable>, aCalledFromJS=false, aDialog=<unavailable>, aNavigate=<unavailable>, aOpeningTab=0x0000000000000000, aArgv=<unavailable>, aResult=<unavailable>) + 2044 at nsWindowWatcher.cpp:559 frame #5: 0x00000001045dec7b XUL`nsWindowWatcher::OpenWindow(this=0x000000010f2e4ac0, aParent=0x0000000000000000, aUrl=0x0000000106051650, aName=0x0000000105ad9fbc, aFeatures=0x0000000105d560dc, aArguments=<unavailable>, aResult=<unavailable>) + 187 at nsWindowWatcher.cpp:363 frame #6: 0x0000000104968a31 XUL`ShowProfileManager(aProfileSvc=0x0000000100307ce0, aNative=0x00000001003c17c0) + 929 at nsAppRunner.cpp:2182 frame #7: 0x0000000104964189 XUL`XREMain::XRE_mainStartup(bool*) [inlined] nsGetterAddRefs<nsIProfileLock>::operator nsIProfileLock**(this=<unavailable>, aResult=<unavailable>, aSmartPtr=<unavailable>, aProfileSvc=<unavailable>, aNative=<unavailable>, aProfileName=<unavailable>) + 1322 at nsAppRunner.cpp:2648 frame #8: 0x0000000104963c5f XUL`XREMain::XRE_mainStartup(this=0x00007fff5fbff2d0, aExitFlag=0x00007fff5fbff27f) + 7215 at nsAppRunner.cpp:3872 frame #9: 0x00000001049675a6 XUL`XREMain::XRE_main(this=0x00007fff5fbff2d0, argc=<unavailable>, argv=<unavailable>, aAppData=<unavailable>) + 342 at nsAppRunner.cpp:4321 frame #10: 0x0000000104967a7b XUL`XRE_main(argc=<unavailable>, argv=<unavailable>, aAppData=<unavailable>, aFlags=<unavailable>) + 219 at nsAppRunner.cpp:4425 frame #11: 0x000000010000216b firefox`main [inlined] do_main(argc=<unavailable>, argv=<unavailable>, xreDirectory=0x000000010030e1c0) + 772 at nsBrowserApp.cpp:214 frame #12: 0x0000000100001e67 firefox`main(argc=<unavailable>, argv=<unavailable>) + 1159 at nsBrowserApp.cpp:478 frame #13: 0x00000001000016b4 firefox`start + 52
Flags: needinfo?(noemi.freiredecarlos)
That helps, thanks. So we're calling BrowserTabsRemoteAutostart which, only on Mac and only if we have e10s autostart turned on, will try to check for disabled hardware acceleration. And _that_ check is what hits the fatal assert. Jim, you know something about this code, right? How is this expected to work?
Flags: needinfo?(jmathies)
(In reply to Not doing reviews right now from comment #5) > That helps, thanks. So we're calling BrowserTabsRemoteAutostart which, only > on Mac and only if we have e10s autostart turned on, will try to check for > disabled hardware acceleration. And _that_ check is what hits the fatal > assert. > > Jim, you know something about this code, right? How is this expected to > work? We check the gfx state here because e10 relies on omtc. Looks like we need to check if we have a profile before calling BrowserTabsRemoteAutostart() in this particular case. We could just return false, I don't think we need e10s here.
Flags: needinfo?(jmathies)
Hi, Just adding that NightlyDebug properly runs through |./mach run -P| with today's (6/16) master build. Has been there any change related to what was raised in comment 6 since 6/9?. Thanks!
Flags: needinfo?(bzbarsky)
No idea, sorry.
Flags: needinfo?(bzbarsky)
Severity: normal → S3

I think it works

Status: NEW → RESOLVED
Closed: 1 year ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: