Closed
Bug 286708
Opened 20 years ago
Closed 19 years ago
###!!! ASSERTION: nsPrompt used too early on window object!: 'window->GetExtantDocument() != nsnull', file r:/mozilla/embedding/components/windowwatcher/src/nsPrompt.cpp, line 168
Categories
(Core Graveyard :: Embedding: APIs, defect)
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: timeless, Assigned: jst)
References
()
Details
(Keywords: assertion)
###!!! ASSERTION: nsPrompt used too early on window object!: 'window->GetExtantDocument() != nsnull', file r:/mozilla/embedding/components/windowwatcher/src/nsPrompt.cpp, line 168 steps: 1. load http://www.soaprpc.com/examples/ 2. click http://soap.develop.com/xmlrpc/ + error {mStorage=0x0012f42c "dnsNotFound" } nsAutoString + {,,necko.dll}((*(nsACString*)(&(*(nsCSubstring*)(&(*(nsStandardURL*){*}aURI).mSpec))))).mData 0x036d1260 "http://soap.develop.com/xmlrpc/" char * xpcom_core.dll!nsDebugImpl::Assertion(const char * aStr=0x01fe5bfc, const char * aExpr=0x01fe5bd4, const char * aFile=0x01fe5b94, int aLine=0x000000a8) Line 301 C++ xpcom_core.dll!nsDebug::Assertion(const char * aStr=0x01fe5bfc, const char * aExpr=0x01fe5bd4, const char * aFile=0x01fe5b94, int aLine=0x000000a8) Line 109 C++ embedcomponents.dll!nsAutoDOMEventDispatcher::DispatchCustomEvent(const char * aEventName=0x01fe5b64) Line 168 + 0x2d C++ embedcomponents.dll!nsAutoDOMEventDispatcher::nsAutoDOMEventDispatcher(nsIDOMWindow * aWindow=0x037b78ec) Line 146 + 0x1c C++ embedcomponents.dll!nsPrompt::Alert(const unsigned short * dialogTitle=0x00000000, const unsigned short * text=0x03547620) Line 205 C++ > docshell.dll!nsDocShell::DisplayLoadError(unsigned int aError=0x804b001e, nsIURI * aURI=0x03710ed8, const unsigned short * aURL=0x00000000, nsIChannel * aFailedChannel=0x03572af8) Line 2971 C++ docshell.dll!nsWebShell::EndPageLoad(nsIWebProgress * aProgress=0x0361e33c, nsIChannel * channel=0x03572af8, unsigned int aStatus=0x804b001e) Line 816 C++ docshell.dll!nsDocShell::OnStateChange(nsIWebProgress * aProgress=0x0361e33c, nsIRequest * aRequest=0x03572af8, unsigned int aStateFlags=0x00020010, unsigned int aStatus=0x804b001e) Line 4506 C++ docshell.dll!nsDocLoader::FireOnStateChange(nsIWebProgress * aProgress=0x0361e33c, nsIRequest * aRequest=0x03572af8, int aStateFlags=0x00020010, unsigned int aStatus=0x804b001e) Line 1195 C++ docshell.dll!nsDocLoader::doStopDocumentLoad(nsIRequest * request=0x03572af8, unsigned int aStatus=0x804b001e) Line 832 C++ docshell.dll!nsDocLoader::DocLoaderIsEmpty() Line 729 C++ docshell.dll!nsDocLoader::OnStopRequest(nsIRequest * aRequest=0x03572af8, nsISupports * aCtxt=0x00000000, unsigned int aStatus=0x804b001e) Line 653 C++ necko.dll!nsLoadGroup::RemoveRequest(nsIRequest * request=0x03572af8, nsISupports * ctxt=0x00000000, unsigned int aStatus=0x804b001e) Line 732 + 0x2c C++ necko.dll!nsHttpChannel::OnStopRequest(nsIRequest * request=0x034f8908, nsISupports * ctxt=0x00000000, unsigned int status=0x804b001e) Line 3853 C++ necko.dll!nsInputStreamPump::OnStateStop() Line 507 C++ necko.dll!nsInputStreamPump::OnInputStreamReady(nsIAsyncInputStream * stream=0x0345ca68) Line 343 + 0xb C++ xpcom_core.dll!nsInputStreamReadyEvent::EventHandler(PLEvent * plevent=0x03777b34) Line 119 C++ xpcom_core.dll!PL_HandleEvent(PLEvent * self=0x03777b34) Line 698 + 0xa C xpcom_core.dll!PL_ProcessPendingEvents(PLEventQueue * self=0x0114a280) Line 633 + 0x9 C xpcom_core.dll!_md_TimerProc(HWND__ * hwnd=0x007d15be, unsigned int uMsg=0x00000113, unsigned int idEvent=0x00000000, unsigned long dwTime=0x217e0d65) Line 1034 + 0x9 C user32.dll!_InternalCallWinProc@20() + 0x28 user32.dll!_UserCallWinProc@24() + 0xa1 user32.dll!_DispatchMessageWorker@8() + 0xcc6 user32.dll!_DispatchMessageA@4() + 0xf mfc71d.dll!AfxInternalPumpMessage() Line 188 C++ mfc71d.dll!CWinThread::PumpMessage() Line 916 C++ mfc71d.dll!CWinThread::Run() Line 637 + 0xb C++ mfc71d.dll!CWinApp::Run() Line 701 C++ mfc71d.dll!AfxWinMain(HINSTANCE__ * hInstance=0x00400000, HINSTANCE__ * hPrevInstance=0x00000000, char * lpCmdLine=0x00142384, int nCmdShow=0x0000000a) Line 49 + 0xb C++ mfcembed.exe!WinMain(HINSTANCE__ * hInstance=0x00400000, HINSTANCE__ * hPrevInstance=0x00000000, char * lpCmdLine=0x00142384, int nCmdShow=0x0000000a) Line 25 C++ mfcembed.exe!WinMainCRTStartup() Line 390 + 0x39 C kernel32.dll!_BaseProcessStart@4() + 0x23
Comment 1•20 years ago
|
||
Assigning to jst, since he knows this stuff... Johnny, the nsIPrompt in this case is coming from docshell calling GetInterface on itself, so I don't see how this could possibly screw up. timeless, is this a build with the windowwatcher contract overridden or something?
Assignee: adamlock → jst
nope, that was the previous company :) i thought promptservice was, if so, it would nest to call the main promptservice, but i don't see that here...
so, here's an interesting flavor: 0[344988]: WARNING: NS_ENSURE_TRUE(cv) failed, file r:/mozilla/xpfe/appshell/src/nsXULWindow.cpp, line 1552 0[344988]: WARNING: chrome: failed to get base url for chrome://myapp/content/myapp.xul -- using wacky default, file r:/mozilla/rdf/chrome/src/nsChromeRegistry.cpp, line 517 0[344988]: ###!!! ASSERTION: nsPrompt used too early on window object!: 'window->GetExtantDocument() != nsnull', file r:/mozilla/embedding/components/windowwatcher/src/nsPrompt.cpp, line 168 0[344988]: ###!!! Break: at file r:/mozilla/embedding/components/windowwatcher/src/nsPrompt.cpp, line 168 i don't have the jar file for myapp on this system, but i do have the js that wants to open it :). 00127f20 004be80e ntdll!DbgBreakPoint 00127f28 004be74e xpcom_core!nsDebugImpl::Break( char * aFile = 0x01785fbc "r:/mozilla/embedding/components/windowwatcher/src/nsPrompt.cpp", int aLine = 168)+0x7e [r:\mozilla\xpcom\base\nsdebugimpl.cpp @ 385] 001284a4 0044730d xpcom_core!nsDebugImpl::Assertion( char * aStr = 0x01786024 "nsPrompt used too early on window object!", char * aExpr = 0x01785ffc "window->GetExtantDocument() != nsnull", char * aFile = 0x01785fbc "r:/mozilla/embedding/components/windowwatcher/src/nsPrompt.cpp", int aLine = 168)+0x29e [r:\mozilla\xpcom\base\nsdebugimpl.cpp @ 301] 001284c4 0173fd01 xpcom_core!nsDebug::Assertion( char * aStr = 0x01786024 "nsPrompt used too early on window object!", char * aExpr = 0x01785ffc "window->GetExtantDocument() != nsnull", char * aFile = 0x01785fbc "r:/mozilla/embedding/components/windowwatcher/src/nsPrompt.cpp", int aLine = 168)+0x4d [r:\mozilla\all-i686-pc-cygwin\xpcom\build\nsdebug.cpp @ 109] 001285d0 0173fc4c embedcomponents!nsAutoDOMEventDispatcher::DispatchCustomEvent( char * aEventName = 0x01785f8c "DOMWillOpenModalDialog")+0x71 [r:\mozilla\embedding\components\windowwatcher\src\nsprompt.cpp @ 168] 001285e0 0173ffaa embedcomponents!nsAutoDOMEventDispatcher::nsAutoDOMEventDispatcher( class nsIDOMWindow * aWindow = 0x07592c34)+0x1c [r:\mozilla\embedding\components\windowwatcher\src\nsprompt.cpp @ 146] 00128600 01588c9b embedcomponents!nsPrompt::Alert( unsigned short * dialogTitle = 0x00000000, unsigned short * text = 0x048fc968)+0x1a [r:\mozilla\embedding\components\windowwatcher\src\nsprompt.cpp @ 205] 00128b98 01590b49 docshell!nsDocShell::DisplayLoadError( unsigned int aError = 0x80520012, class nsIURI * aURI = 0x06f25e98, unsigned short * aURL = 0x00000000, class nsIChannel * aFailedChannel = 0x07128038)+0xc9b [r:\mozilla\docshell\base\nsdocshell.cpp @ 2970] 00128d94 01581a0e docshell!nsDocShell::InternalLoad( class nsIURI * aURI = 0x06f25e98, class nsIURI * aReferrer = 0x04936708, class nsISupports * aOwner = 0x00000000, unsigned int aFlags = 1, unsigned short * aWindowTarget = 0x061a1100, char * aTypeHint = 0x00000000 "", class nsIInputStream * aPostData = 0x00000000, class nsIInputStream * aHeadersData = 0x00000000, unsigned int aLoadType = 1, class nsISHEntry * aSHEntry = 0x00000000, int aFirstParty = 1, class nsIDocShell ** aDocShell = 0x00000000, class nsIRequest ** aRequest = 0x00000000)+0x10f9 [r:\mozilla\docshell\base\nsdocshell.cpp @ 5649] 00128f04 017348bc docshell!nsDocShell::LoadURI( class nsIURI * aURI = 0x06f25e98, class nsIDocShellLoadInfo * aLoadInfo = 0x06f10d70, unsigned int aLoadFlags = 0, int aFirstParty = 1)+0x8be [r:\mozilla\docshell\base\nsdocshell.cpp @ 776] 0012921c 01733436 embedcomponents!nsWindowWatcher::OpenWindowJS( class nsIDOMWindow * aParent = 0x00000000, char * aUrl = 0x041940a0 "chrome://myapp/content/", char * aName = 0x07592b40 "MyApp", char * aFeatures = 0x06c3c858 "chrome,dialog=no,all,resizable=yes,width=450,height=450,hidewindow", int aDialog = 0, unsigned int argc = 0, long * argv = 0x00000000, class nsIDOMWindow ** _retval = 0x00129420)+0x145c [r:\mozilla\embedding\components\windowwatcher\src\nswindowwatcher.cpp @ 785] 00129260 004d49d7 embedcomponents!nsWindowWatcher::OpenWindow( class nsIDOMWindow * aParent = 0x00000000, char * aUrl = 0x041940a0 "chrome://myapp/content/", char * aName = 0x07592b40 "MyApp", char * aFeatures = 0x06c3c858 "chrome,dialog=no,all,resizable=yes,width=450,height=450,hidewindow", class nsISupports * aArguments = 0x00000000, class nsIDOMWindow ** _retval = 0x00129420)+0x76 [r:\mozilla\embedding\components\windowwatcher\src\nswindowwatcher.cpp @ 469] 0012929c 03609aab xpcom_core!XPTC_InvokeByIndex( class nsISupports * that = 0x03b9ee18, unsigned int methodIndex = 3, unsigned int paramCount = 6, struct nsXPTCVariant * params = 0x001293d0)+0x27 [r:\mozilla\xpcom\reflect\xptcall\src\md\win32\xptcinvoke.cpp @ 102] 00129550 03615db9 xpc3250!XPCWrappedNative::CallMethod( class XPCCallContext * ccx = 0x00129584, XPCWrappedNative::CallMode mode = CALL_METHOD (0))+0xddb [r:\mozilla\js\src\xpconnect\src\xpcwrappednative.cpp @ 2068] 00129604 00eec95d xpc3250!XPC_WN_CallMethod( struct JSContext * cx = 0x048120c8, struct JSObject * obj = 0x06182838, unsigned int argc = 5, long * argv = 0x070b23d8, long * vp = 0x001296a4)+0x1c9 [r:\mozilla\js\src\xpconnect\src\xpcwrappednativejsops.cpp @ 1311] 00129734 00efc07b js3250!js_Invoke( struct JSContext * cx = 0x048120c8, unsigned int argc = 5, unsigned int flags = 0)+0xcad [r:\mozilla\js\src\jsinterp.c @ 1320] 0012a074 00eec9cd js3250!js_Interpret( struct JSContext * cx = 0x048120c8, unsigned char * pc = 0x06c04dcb ":", long * result = 0x0012a190)+0xda7b [r:\mozilla\js\src\jsinterp.c @ 3614] 0012a19c 00ef6827 js3250!js_Invoke( struct JSContext * cx = 0x048120c8, unsigned int argc = 0, unsigned int flags = 1)+0xd1d [r:\mozilla\js\src\jsinterp.c @ 1340] 0012aadc 00eec9cd js3250!js_Interpret( struct JSContext * cx = 0x048120c8, unsigned char * pc = 0x06c3d084 "#", long * result = 0x0012abf8)+0x8227 [r:\mozilla\js\src\jsinterp.c @ 3176] 0012ac04 0360279b js3250!js_Invoke( struct JSContext * cx = 0x048120c8, unsigned int argc = 2, unsigned int flags = 2)+0xd1d [r:\mozilla\js\src\jsinterp.c @ 1340]
Comment 4•20 years ago
|
||
Maybe chrome docshells should always use error pages? (No session history issues to worry about!)
Comment 5•19 years ago
|
||
Bug 322773 has another way to trigger this assertion message.
Comment 6•19 years ago
|
||
Based on the stack here, it looks like the checkin for bug 322773 should fix this assertion. Hopefully marking this as fixed, someone please reopen if it isn't.
Status: NEW → RESOLVED
Closed: 19 years ago
Resolution: --- → FIXED
Updated•6 years ago
|
Product: Core → Core Graveyard
You need to log in
before you can comment on or make changes to this bug.
Description
•