Closed Bug 353408 Opened 15 years ago Closed 8 years ago

###!!! ASSERTION: subshell not in the map: 'shellContent', file m:/webforms/mozilla/docshell/base/nsDocShell.cpp, line 3825

Categories

(Core :: DOM: Navigation, defect)

x86
Windows XP
defect
Not set
normal

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: WeirdAl, Unassigned)

Details

(Keywords: assertion, helpwanted, testcase)

Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9a1) Gecko/20060919 SeaMonkey/1.5a

Steps to reproduce:
(1) Open new blank tab.
(2) Load this URI into the new tab:
https://bugzilla.mozilla.org/buglist.cgi?query_format=specific&order=relevance+desc&bug_status=__open__&content=subshell+not+in+the+map

Reproducible:  Frequently (not quite 100%, probably 90 %)

First stack:

 	ntdll.dll!7c901230() 	
 	[Frames below may be incorrect and/or missing, no symbols loaded for ntdll.dll]	
>	xpcom_core.dll!Break(const char * aMsg=0x0012ebb8)  Line 471	C++
 	xpcom_core.dll!NS_DebugBreak_P(unsigned int aSeverity=0x00000001, const char * aStr=0x0230f644, const char * aExpr=0x0230f634, const char * aFile=0x0230f600, int aLine=0x00000ef1)  Line 350 + 0xc bytes	C++
 	docshell.dll!nsDocShell::GetVisibility(int * aVisibility=0x0012f0f8)  Line 3825 + 0x22 bytes	C++
 	gklayout.dll!nsGlobalWindow::Focus()  Line 3544	C++
 	gklayout.dll!CheckForFocus(nsPIDOMWindow * aOurWindow=0x049f3e78, nsIFocusController * aFocusController=0x034cfd70, nsIDocument * aDocument=0x04bbf6e8)  Line 2822	C++
 	gklayout.dll!PresShell::UnsuppressAndInvalidate()  Line 4928 + 0x1e bytes	C++
 	gklayout.dll!PresShell::UnsuppressPainting()  Line 4956	C++
 	gklayout.dll!DocumentViewerImpl::Stop()  Line 1644	C++
 	docshell.dll!nsDocShell::SetupNewViewer(nsIContentViewer * aNewViewer=0x049fc1e8)  Line 6051	C++
 	docshell.dll!nsDocShell::Embed(nsIContentViewer * aContentViewer=0x049fc1e8, const char * aCommand=0x0230b509, nsISupports * aExtraInfo=0x00000000)  Line 4661 + 0x1c bytes	C++
 	docshell.dll!nsDocShell::CreateContentViewer(const char * aContentType=0x04dcaae8, nsIRequest * request=0x04a65158, nsIStreamListener * * aContentHandler=0x04de6378)  Line 5807 + 0x27 bytes	C++
 	docshell.dll!nsDSURIContentListener::DoContent(const char * aContentType=0x04dcaae8, int aIsContentPreferred=0x00000000, nsIRequest * request=0x04a65158, nsIStreamListener * * aContentHandler=0x04de6378, int * aAbortProcess=0x0012f62c)  Line 138 + 0x20 bytes	C++
 	docshell.dll!nsDocumentOpenInfo::TryContentListener(nsIURIContentListener * aListener=0x04b96298, nsIChannel * aChannel=0x04a65158)  Line 789 + 0x41 bytes	C++
 	docshell.dll!nsDocumentOpenInfo::DispatchContent(nsIRequest * request=0x04a65158, nsISupports * aCtxt=0x00000000)  Line 488 + 0x39 bytes	C++
 	docshell.dll!nsDocumentOpenInfo::OnStartRequest(nsIRequest * request=0x04a65158, nsISupports * aCtxt=0x00000000)  Line 333 + 0x10 bytes	C++
 	necko.dll!nsMultiMixedConv::SendStart(nsIChannel * aChannel=0x04d77868)  Line 783 + 0x34 bytes	C++
 	necko.dll!nsMultiMixedConv::OnDataAvailable(nsIRequest * request=0x04d77868, nsISupports * context=0x00000000, nsIInputStream * inStr=0x04bbf290, unsigned int sourceOffset=0x0000014c, unsigned int count=0x000007fe)  Line 504 + 0x11 bytes	C++
 	docshell.dll!nsDocumentOpenInfo::OnDataAvailable(nsIRequest * request=0x04d77868, nsISupports * aCtxt=0x00000000, nsIInputStream * inStr=0x04bbf290, unsigned int sourceOffset=0x0000014c, unsigned int count=0x000007fe)  Line 360 + 0x30 bytes	C++
 	necko.dll!nsStreamListenerTee::OnDataAvailable(nsIRequest * request=0x04d77868, nsISupports * context=0x00000000, nsIInputStream * input=0x04c59ce0, unsigned int offset=0x0000014c, unsigned int count=0x000007fe)  Line 97 + 0x35 bytes	C++
 	necko.dll!nsHttpChannel::OnDataAvailable(nsIRequest * request=0x04b91188, nsISupports * ctxt=0x00000000, nsIInputStream * input=0x04c59ce0, unsigned int offset=0x0000014c, unsigned int count=0x000007fe)  Line 4194 + 0x5d bytes	C++
 	necko.dll!nsInputStreamPump::OnStateTransfer()  Line 503 + 0x40 bytes	C++
 	necko.dll!nsInputStreamPump::OnInputStreamReady(nsIAsyncInputStream * stream=0x04c59ce0)  Line 393 + 0xb bytes	C++
 	xpcom_core.dll!nsInputStreamReadyEvent::Run()  Line 112	C++
 	xpcom_core.dll!nsThread::ProcessNextEvent(int mayWait=0x00000001, int * result=0x0012fe04)  Line 483	C++
 	xpcom_core.dll!NS_ProcessNextEvent_P(nsIThread * thread=0x00398e38, int mayWait=0x00000001)  Line 225 + 0x16 bytes	C++
 	gkwidget.dll!nsBaseAppShell::Run()  Line 153 + 0xc bytes	C++
 	appcomps.dll!nsAppStartup::Run()  Line 219	C++
 	seamonkey.exe!main1(int argc=0x00000001, char * * argv=0x00394560, nsISupports * nativeApp=0x0095e930)  Line 1239 + 0x22 bytes	C++
 	seamonkey.exe!main(int argc=0x00000001, char * * argv=0x00394560)  Line 1741 + 0x25 bytes	C++
 	seamonkey.exe!__tmainCRTStartup()  Line 586 + 0x19 bytes	C
 	seamonkey.exe!mainCRTStartup()  Line 403	C
 	kernel32.dll!7c816fd7() 	

Second stack:
 	ntdll.dll!7c901230() 	
 	[Frames below may be incorrect and/or missing, no symbols loaded for ntdll.dll]	
>	xpcom_core.dll!Break(const char * aMsg=0x0012e07c)  Line 471	C++
 	xpcom_core.dll!NS_DebugBreak_P(unsigned int aSeverity=0x00000001, const char * aStr=0x0230f644, const char * aExpr=0x0230f634, const char * aFile=0x0230f600, int aLine=0x00000ef1)  Line 350 + 0xc bytes	C++
 	docshell.dll!nsDocShell::GetVisibility(int * aVisibility=0x0012e554)  Line 3825 + 0x22 bytes	C++
 	gklayout.dll!PresShell::IsVisible()  Line 6328	C++
 	gklayout.dll!nsIMEStateManager::IsActive(nsPresContext * aPresContext=0x04a65238)  Line 196 + 0x19 bytes	C++
 	gklayout.dll!nsIMEStateManager::OnChangeFocus(nsPresContext * aPresContext=0x04a65238, nsIContent * aContent=0x00000000)  Line 106 + 0x9 bytes	C++
 	gklayout.dll!nsEventStateManager::PreHandleEvent(nsPresContext * aPresContext=0x04a65238, nsEvent * aEvent=0x0012eae4, nsIFrame * aTargetFrame=0x04e274a4, nsEventStatus * aStatus=0x0012e8f8, nsIView * aView=0x04a65eb0)  Line 809 + 0x1b bytes	C++
 	gklayout.dll!PresShell::HandleEventInternal(nsEvent * aEvent=0x0012eae4, nsIView * aView=0x04a65eb0, nsEventStatus * aStatus=0x0012e8f8)  Line 6253 + 0x36 bytes	C++
 	gklayout.dll!PresShell::HandleEvent(nsIView * aView=0x04a65eb0, nsGUIEvent * aEvent=0x0012eae4, nsEventStatus * aEventStatus=0x0012e8f8)  Line 6034 + 0x17 bytes	C++
 	gklayout.dll!nsViewManager::HandleEvent(nsView * aView=0x04a65eb0, nsPoint aPoint={...}, nsGUIEvent * aEvent=0x0012eae4, int aCaptured=0x00000000)  Line 1668	C++
 	gklayout.dll!nsViewManager::DispatchEvent(nsGUIEvent * aEvent=0x0012eae4, nsEventStatus * aStatus=0x0012ea20)  Line 1621 + 0x22 bytes	C++
 	gklayout.dll!HandleEvent(nsGUIEvent * aEvent=0x0012eae4)  Line 174	C++
 	gkwidget.dll!nsWindow::DispatchEvent(nsGUIEvent * event=0x0012eae4, nsEventStatus & aStatus=nsEventStatus_eIgnore)  Line 1108 + 0xc bytes	C++
 	gkwidget.dll!nsWindow::DispatchWindowEvent(nsGUIEvent * event=0x0012eae4)  Line 1129	C++
 	gkwidget.dll!nsWindow::DispatchFocus(unsigned int aEventType=0x00000069, int isMozWindowTakingFocus=0x00000001)  Line 6230 + 0x11 bytes	C++
 	gkwidget.dll!nsWindow::ProcessMessage(unsigned int msg=0x00000007, unsigned int wParam=0x00060718, long lParam=0x00000000, long * aRetValue=0x0012eee8)  Line 4751 + 0x19 bytes	C++
 	gkwidget.dll!nsWindow::WindowProc(HWND__ * hWnd=0x000606b8, unsigned int msg=0x00000007, unsigned int wParam=0x00060718, long lParam=0x00000000)  Line 1297 + 0x1d bytes	C++
 	user32.dll!77d48734() 	
 	user32.dll!77d48816() 	
 	nspr4.dll!PR_GetCurrentThread()  Line 175	C
 	user32.dll!77d4b4c0() 	
 	user32.dll!77d4b50c() 	
 	ntdll.dll!7c90eae3() 	
 	user32.dll!77d4da6c() 	
 	gkwidget.dll!nsWindow::SetFocus(int aRaise=0x00000001)  Line 2253	C++
 	gklayout.dll!nsGlobalWindow::Focus()  Line 3615 + 0x24 bytes	C++
 	gklayout.dll!CheckForFocus(nsPIDOMWindow * aOurWindow=0x049f3e78, nsIFocusController * aFocusController=0x034cfd70, nsIDocument * aDocument=0x04bbf6e8)  Line 2822	C++
 	gklayout.dll!PresShell::UnsuppressAndInvalidate()  Line 4928 + 0x1e bytes	C++
 	gklayout.dll!PresShell::UnsuppressPainting()  Line 4956	C++
 	gklayout.dll!DocumentViewerImpl::Stop()  Line 1644	C++
 	docshell.dll!nsDocShell::SetupNewViewer(nsIContentViewer * aNewViewer=0x049fc1e8)  Line 6051	C++
 	docshell.dll!nsDocShell::Embed(nsIContentViewer * aContentViewer=0x049fc1e8, const char * aCommand=0x0230b509, nsISupports * aExtraInfo=0x00000000)  Line 4661 + 0x1c bytes	C++
 	docshell.dll!nsDocShell::CreateContentViewer(const char * aContentType=0x04dcaae8, nsIRequest * request=0x04a65158, nsIStreamListener * * aContentHandler=0x04de6378)  Line 5807 + 0x27 bytes	C++
 	docshell.dll!nsDSURIContentListener::DoContent(const char * aContentType=0x04dcaae8, int aIsContentPreferred=0x00000000, nsIRequest * request=0x04a65158, nsIStreamListener * * aContentHandler=0x04de6378, int * aAbortProcess=0x0012f62c)  Line 138 + 0x20 bytes	C++
 	docshell.dll!nsDocumentOpenInfo::TryContentListener(nsIURIContentListener * aListener=0x04b96298, nsIChannel * aChannel=0x04a65158)  Line 789 + 0x41 bytes	C++
 	docshell.dll!nsDocumentOpenInfo::DispatchContent(nsIRequest * request=0x04a65158, nsISupports * aCtxt=0x00000000)  Line 488 + 0x39 bytes	C++
 	docshell.dll!nsDocumentOpenInfo::OnStartRequest(nsIRequest * request=0x04a65158, nsISupports * aCtxt=0x00000000)  Line 333 + 0x10 bytes	C++
 	necko.dll!nsMultiMixedConv::SendStart(nsIChannel * aChannel=0x04d77868)  Line 783 + 0x34 bytes	C++
 	necko.dll!nsMultiMixedConv::OnDataAvailable(nsIRequest * request=0x04d77868, nsISupports * context=0x00000000, nsIInputStream * inStr=0x04bbf290, unsigned int sourceOffset=0x0000014c, unsigned int count=0x000007fe)  Line 504 + 0x11 bytes	C++
 	docshell.dll!nsDocumentOpenInfo::OnDataAvailable(nsIRequest * request=0x04d77868, nsISupports * aCtxt=0x00000000, nsIInputStream * inStr=0x04bbf290, unsigned int sourceOffset=0x0000014c, unsigned int count=0x000007fe)  Line 360 + 0x30 bytes	C++
 	necko.dll!nsStreamListenerTee::OnDataAvailable(nsIRequest * request=0x04d77868, nsISupports * context=0x00000000, nsIInputStream * input=0x04c59ce0, unsigned int offset=0x0000014c, unsigned int count=0x000007fe)  Line 97 + 0x35 bytes	C++
 	necko.dll!nsHttpChannel::OnDataAvailable(nsIRequest * request=0x04b91188, nsISupports * ctxt=0x00000000, nsIInputStream * input=0x04c59ce0, unsigned int offset=0x0000014c, unsigned int count=0x000007fe)  Line 4194 + 0x5d bytes	C++
 	necko.dll!nsInputStreamPump::OnStateTransfer()  Line 503 + 0x40 bytes	C++
 	necko.dll!nsInputStreamPump::OnInputStreamReady(nsIAsyncInputStream * stream=0x04c59ce0)  Line 393 + 0xb bytes	C++
 	xpcom_core.dll!nsInputStreamReadyEvent::Run()  Line 112	C++
 	xpcom_core.dll!nsThread::ProcessNextEvent(int mayWait=0x00000001, int * result=0x0012fe04)  Line 483	C++
 	xpcom_core.dll!NS_ProcessNextEvent_P(nsIThread * thread=0x00398e38, int mayWait=0x00000001)  Line 225 + 0x16 bytes	C++
 	gkwidget.dll!nsBaseAppShell::Run()  Line 153 + 0xc bytes	C++
 	appcomps.dll!nsAppStartup::Run()  Line 219	C++
 	seamonkey.exe!main1(int argc=0x00000001, char * * argv=0x00394560, nsISupports * nativeApp=0x0095e930)  Line 1239 + 0x22 bytes	C++
 	seamonkey.exe!main(int argc=0x00000001, char * * argv=0x00394560)  Line 1741 + 0x25 bytes	C++
 	seamonkey.exe!__tmainCRTStartup()  Line 586 + 0x19 bytes	C
 	seamonkey.exe!mainCRTStartup()  Line 403	C
 	kernel32.dll!7c816fd7()
Is this still an issue?
This seems to be worksforme in current debug trunk build on windows.
I see the second stack when running Mochitests with XPCOM_DEBUG_BREAK=stack behavior.  See the attachment in bug 404077, but be warned the output's not perfectly interleaved due to buffering issues.
Blocks: 404077
This might be a duplicate of bug 186675; only difference I see is line number, and given the bug number difference between the two it's not impossible they're the same.
No longer blocks: 404077
WFM on the latest Nightly debug:
Mozilla/5.0 (Windows NT 5.1; rv:29.0) Gecko/20100101 Firefox/29.0 (20140113204951)

I performed the steps from comment 0 several times but never saw an assertion.
Status: NEW → RESOLVED
Closed: 8 years ago
Keywords: qawanted
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.