Open Bug 966326 Opened 11 years ago Updated 2 years ago

###!!! ASSERTION: Uh, IsInModalState() called w/o a reachable top window?

Categories

(Core :: DOM: Core & HTML, defect, P5)

29 Branch
x86_64
Windows 8.1
defect

Tracking

()

People

(Reporter: 06needhamt, Unassigned)

References

()

Details

Attachments

(2 files)

Attached image Screenshot of error message (deleted) —
User Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:29.0) Gecko/20100101 Firefox/29.0 (Beta/Release) Build ID: 20140131161412 Steps to reproduce: Go on the WebGL globe at http://www.chromeexperiments.com/detail/webgl-globe/ Move the globe around a bit Close the browser by clicking on the 'X' button at the top of the window Actual results: ###!!! ASSERTION: Uh, IsInModalState() called w/o a reachable top window? Expected results: The browser should of exited sucessfully
Component: Canvas: WebGL → DOM
Can't repro on Nightly 2014-02-03-mozilla-central-debug, win 7 x64
Still occurs for me with same str
I can't reproduce this having only 1 tab with the above URL opened. But I can reproduce the assertion by just closing FF with 2 empty tabs opened. Could you please check again?
Flags: needinfo?(06needhamt)
It happens to me on both of those occasions that you mentioned hope this helps
Flags: needinfo?(06needhamt)
Status: UNCONFIRMED → NEW
Depends on: 404828
Ever confirmed: true
Bobby, is there any chance this is related to https://hg.mozilla.org/mozilla-central/rev/72bc1aebb5d0? I'm seeing the same assertion failure but with completely different steps to reproduce; I've figured out (roughly) why I'm seeing it, so I wanted to record it here in case it helps... I was trying to track down the cause of bug 920978, and running that single test on my debug trunk build with the attached additional NSPR logging showed the following sequence: Test opens about:addons tab (event loop spins) Test opens modal doorhanger on about:addons tab (event loop spins, lots of test activity) Test cancels modal doorhanger ...nsGlobalWindow.LeaveModalState() creates an nsPendingTimeoutRunner and schedules it on the event loop Test closes about:addons tab (event loop spins) nsPendingTimeoutRunner.Run() is invoked, and it tries to access the now closed about:addons tab Modifying my test to let the event loop spin once between cancelling the modal doorhanger and closing the tab makes the assertion go away. Here's a slightly edited log of my test output with the assertion failure: ... (close modal dialog here) 0:31.64 2114982272[10065b070]: LeaveModalState 1272d2c00 (topwin 1272d2c00) depth 0 0:31.64 2114982272[10065b070]: nsPendingTimeoutRunner 1130fb840 created for window 1272d2c00 ... (next lines are where we close about:addons) 0:31.68 TEST-PASS | chrome://mochitests/content/browser/toolkit/mozapps/extensions/test/browser/browser_dragdrop.js | Should have an add-ons manager window to close 0:31.68 TEST-PASS | chrome://mochitests/content/browser/toolkit/mozapps/extensions/test/browser/browser_dragdrop.js | Should be closing window with correct URI ... 0:31.87 2114982272[10065b070]: nsPendingTimeoutRunner 1130fb840 running 0:31.87 [47461] ###!!! ASSERTION: Uh, IsInModalState() called w/o a reachable top window?: 'Error', file /Users/ireid/tbird/mozilla-central-PB/dom/base/nsGlobalWindow.cpp, line 8417 0:31.89 nsGlobalWindow::IsInModalState()+0x0000004C [/Users/ireid/tbird/obj/mozilla-central-PB/dist/NightlyDebug.app/Contents/MacOS/XUL +0x02501C3C] 0:31.89 nsGlobalWindow::RunTimeout(nsTimeout*)+0x00000026 [/Users/ireid/tbird/obj/mozilla-central-PB/dist/NightlyDebug.app/Contents/MacOS/XUL +0x025029B6] 0:31.90 nsGlobalWindow::RunPendingTimeoutsRecursive(nsGlobalWindow*, nsGlobalWindow*)+0x00000061 [/Users/ireid/tbird/obj/mozilla-central-PB/dist/NightlyDebug.app/Contents/MacOS/XUL +0x025026E1] 0:31.90 nsPendingTimeoutRunner::Run()+0x00000071 [/Users/ireid/tbird/obj/mozilla-central-PB/dist/NightlyDebug.app/Contents/MacOS/XUL +0x025432E1] 0:31.90 nsThread::ProcessNextEvent(bool, bool*)+0x00000619 [/Users/ireid/tbird/obj/mozilla-central-PB/dist/NightlyDebug.app/Contents/MacOS/XUL +0x00134139] 0:31.91 NS_ProcessPendingEvents(nsIThread*, unsigned int)+0x000000AB [/Users/ireid/tbird/obj/mozilla-central-PB/dist/NightlyDebug.app/Contents/MacOS/XUL +0x000357BB] 0:31.91 nsBaseAppShell::NativeEventCallback()+0x000000C9 [/Users/ireid/tbird/obj/mozilla-central-PB/dist/NightlyDebug.app/Contents/MacOS/XUL +0x02280459] 0:31.91 nsAppShell::ProcessGeckoEvents(void*)+0x000001AC [/Users/ireid/tbird/obj/mozilla-central-PB/dist/NightlyDebug.app/Contents/MacOS/XUL +0x0220C17C]
Flags: needinfo?(bobbyholley)
(In reply to :Irving Reid from comment #6) > Created attachment 8385870 [details] [diff] [review] > Additional NSPR logging in nsGlobalWindow > > Bobby, is there any chance this is related to > https://hg.mozilla.org/mozilla-central/rev/72bc1aebb5d0? I doubt it. I think this assertion is just bogus. GetScriptableTop can return null (via GetParent returning null once the window has been disconnected from the docshell). We should just remove it.
Flags: needinfo?(bobbyholley)
https://bugzilla.mozilla.org/show_bug.cgi?id=1472046 Move all DOM bugs that haven’t been updated in more than 3 years and has no one currently assigned to P5. If you have questions, please contact :mdaly.
Priority: -- → P5
Component: DOM → DOM: Core & HTML
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: