Closed Bug 243804 Opened 21 years ago Closed 21 years ago

Observer isn't unregistered when window closes

Categories

(Calendar :: Sunbird Only, defect)

x86
Windows XP
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: timeless, Assigned: csthomas)

Details

Attachments

(1 file, 3 obsolete files)

"XPConnect is being called on a scope without a 'Components' property!\n" "\n" "This is pretty much always bad. It usually means that native code is\n" "making a callback to an interface implemented in JavaScript, but the\n" "document where the JS object was created has already been cleared and the\n" "global properties of that document's window are *gone*. Generally this\n" "indicates a problem that should be addressed in the design and use of the\n" "callback code." xpcom.dll!nsDebug::Assertion(const char * aStr=0x010d4c28, const char * aExpr=0x010cb378, const char * aFile=0x010d4a90, int aLine=0x0000022a) Line 109 C++ xpc3250.dll!DEBUG_CheckForComponentsInScope(XPCCallContext & ccx={...}, JSObject * obj=0x01186d58, int OKIfNotInitialized=0x80000001) Line 554 + 0x1a C++ xpc3250.dll!XPCWrappedNativeScope::FindInJSObjectScope(XPCCallContext & ccx={...}, JSObject * obj=0x01186d58, int OKIfNotInitialized=0x00000000) Line 596 + 0xa C++ xpc3250.dll!XPCConvert::NativeInterface2JSObject(XPCCallContext & ccx={...}, nsIXPConnectJSObjectHolder * * dest=0x0012e61c, nsISupports * src=0x00f77ec0, const nsID * iid=0x0012e724, JSObject * scope=0x044ba5e0, unsigned int * pErr=0x00000000) Line 1046 + 0xd C++ xpc3250.dll!XPCConvert::NativeData2JS(XPCCallContext & ccx={...}, long * d=0x0012e780, const void * s=0x00000000, const nsXPTType & type={...}, const nsID * iid=0x0012e724, JSObject * scope=0x044ba5e0, unsigned int * pErr=0x00000000) Line 463 + 0x1f C++ xpc3250.dll!nsXPCWrappedJSClass::CallMethod(nsXPCWrappedJS * wrapper=0x01186d58, unsigned short methodIndex=0x0000, const nsXPTMethodInfo * info=0x00369a1c, nsXPTCMiniVariant * nativeParams=0x00f77ec0) Line 1227 + 0x1d C++ xpc3250.dll!nsXPCWrappedJS::CallMethod(unsigned short methodIndex=0x0003, const nsXPTMethodInfo * info=0x0119a198, nsXPTCMiniVariant * params=0x0012e7cc) Line 450 C++ xpcom.dll!PrepareAndDispatch(nsXPTCStubBase * self=0x04602ed0, unsigned int methodIndex=0x00000003, unsigned int * args=0x0012e890, unsigned int * stackBytesToPop=0x0012e880) Line 117 + 0x1a C++ xpcom.dll!SharedStub() Line 147 C++ xppref32.dll!NotifyObserver(const char * newpref=0x044da760, void * data=0x04602ed0) Line 745 + 0x29 C++ > xppref32.dll!pref_DoCallback(const char * changed_pref=0x044da760) Line 865 C++ + changed_pref 0x044da760 "calendar.servers.array" const char * xppref32.dll!pref_HashPref(const char * key=0x044da760, PrefValue value={...}, PrefType type=PREF_STRING, int set_default=0x00000000) Line 758 C++ xppref32.dll!PREF_SetCharPref(const char * pref_name=0x044da760, const char * value=0x02d40768, int set_default=0x00000000) Line 290 + 0x13 C++ xppref32.dll!nsPrefBranch::SetCharPref(const char * aPrefName=0x044da760, const char * aValue=0x02d40768) Line 192 + 0xe C++ xpcom.dll!XPTC_InvokeByIndex(nsISupports * that=0x04482ce8, unsigned int methodIndex=0x00000008, unsigned int paramCount=0x00000002, nsXPTCVariant * params=0x0012ea60) Line 102 C++ xpc3250.dll!XPCWrappedNative::CallMethod(XPCCallContext & ccx={...}, XPCWrappedNative::CallMode mode=CALL_METHOD) Line 2028 + 0x15 C++ xpc3250.dll!XPC_WN_CallMethod(JSContext * cx=0x04c39ba8, JSObject * obj=0x049253e0, unsigned int argc=0x00000002, long * argv=0x03dd303c, long * vp=0x0012ecd0) Line 1287 + 0xa C++ js3250.dll!js_Invoke(JSContext * cx=0x00000000, unsigned int argc=0x00369a1c, unsigned int flags=0x00f77ec0) Line 1281 + 0x11 C js3250.dll!js_Interpret(JSContext * cx=0x00369a1c, long * result=0x00f77ec0) Line 3371 C js3250.dll!js_Invoke(JSContext * cx=0x00000000, unsigned int argc=0x00369a1c, unsigned int flags=0x00f77ec0) Line 1301 + 0xa C js3250.dll!js_Interpret(JSContext * cx=0x00369a1c, long * result=0x00f77ec0) Line 2943 C js3250.dll!js_Invoke(JSContext * cx=0x00000000, unsigned int argc=0x00369a1c, unsigned int flags=0x00f77ec0) Line 1301 + 0xa C js3250.dll!js_Interpret(JSContext * cx=0x00369a1c, long * result=0x00f77ec0) Line 2943 C js3250.dll!js_Invoke(JSContext * cx=0x00000000, unsigned int argc=0x00369a1c, unsigned int flags=0x00f77ec0) Line 1301 + 0xa C js3250.dll!js_InternalInvoke(JSContext * cx=0x04c39bd4, JSObject * obj=0x03d948c0, long fval=0x03e671d8, unsigned int flags=0x00000000, unsigned int argc=0x00000001, long * argv=0x0012f4fc, long * rval=0x0012f524) Line 1378 + 0xe C js3250.dll!JS_CallFunctionValue(JSContext * cx=0x04c39ba8, JSObject * obj=0x03d948c0, long fval=0x03e671d8, unsigned int argc=0x00000001, long * argv=0x0012f4fc, long * rval=0x0012f524) Line 3631 + 0x1a C gklayout.dll!nsJSContext::CallEventHandler(JSObject * aTarget=0x03d948c0, JSObject * aHandler=0x03e671d8, unsigned int argc=0x00000001, long * argv=0x0012f4fc, long * rval=0x00ef3f20) Line 1278 + 0x16 C++ gklayout.dll!nsJSEventListener::HandleEvent(nsIDOMEvent * aEvent=0x046e3600) Line 174 + 0x1c C++ gklayout.dll!nsEventListenerManager::HandleEventSubType(nsListenerStruct * aListenerStruct=0x04ac2cb8, nsIDOMEvent * aDOMEvent=0x046e3600, nsIDOMEventTarget * aCurrentTarget=0x04e21d1c, unsigned int aSubType=0x046e360c, unsigned int aPhaseFlags=0x00000007) Line 1461 C++ gklayout.dll!nsEventListenerManager::HandleEvent(nsIPresContext * aPresContext=0x00000000, nsEvent * aEvent=0x0012f718, nsIDOMEvent * * aDOMEvent=0x0012f6e4, nsIDOMEventTarget * aCurrentTarget=0x04e21d1c, unsigned int aFlags=0x00000007, nsEventStatus * aEventStatus=0x0012f7a8) Line 1553 + 0x21 C++ gklayout.dll!GlobalWindowImpl::HandleDOMEvent(nsIPresContext * aPresContext=0x051eca10, nsEvent * aEvent=0x0012f718, nsIDOMEvent * * aDOMEvent=0x0012f6e4, unsigned int aFlags=0x00000007, nsEventStatus * aEventStatus=0x0012f7a8) Line 875 C++ gklayout.dll!DocumentViewerImpl::LoadComplete(unsigned int aStatus=0x00000000) Line 909 C++ docshell.dll!nsDocShell::EndPageLoad(nsIWebProgress * aProgress=0x03dfde5c, nsIChannel * aChannel=0x04879c90, unsigned int aStatus=0x00000000) Line 4370 C++ docshell.dll!nsWebShell::EndPageLoad(nsIWebProgress * aProgress=0x00000000, nsIChannel * channel=0x00369a1c, unsigned int aStatus=0x00f77ec0) Line 754 C++ docshell.dll!nsDocShell::OnStateChange(nsIWebProgress * aProgress=0x03dfde5c, nsIRequest * aRequest=0x04879c90, unsigned int aStateFlags=0x04879c90, unsigned int aStatus=0x00000000) Line 4295 C++ docshell.dll!nsDocLoaderImpl::FireOnStateChange(nsIWebProgress * aProgress=0x03dfde5c, nsIRequest * aRequest=0x04879c90, int aStateFlags=0x00020010, unsigned int aStatus=0x00000000) Line 1232 C++ docshell.dll!nsDocLoaderImpl::doStopDocumentLoad(nsIRequest * request=0x04879c90, unsigned int aStatus=0x00000000) Line 867 C++ docshell.dll!nsDocLoaderImpl::DocLoaderIsEmpty() Line 765 C++ docshell.dll!nsDocLoaderImpl::OnStopRequest(nsIRequest * aRequest=0x00000000, nsISupports * aCtxt=0x00000000, unsigned int aStatus=0x80004005) Line 695 C++ necko.dll!nsLoadGroup::RemoveRequest(nsIRequest * request=0x03dfde4c, nsISupports * ctxt=0x00000000, unsigned int aStatus=0x80004005) Line 698 C++ necko.dll!nsJARChannel::OnStopRequest(nsIRequest * req=0x04dd7d78, nsISupports * ctx=0x00000000, unsigned int status=0x80004005) Line 694 C++ necko.dll!nsInputStreamPump::OnStateStop() Line 506 C++ necko.dll!nsInputStreamPump::OnInputStreamReady(nsIAsyncInputStream * stream=0x05470d64) Line 341 C++ xpcom.dll!nsInputStreamReadyEvent::EventHandler(PLEvent * plevent=0x04dd7df4) Line 119 C++ xpcom.dll!PL_HandleEvent(PLEvent * self=0x04dd7df4) Line 693 C xpcom.dll!PL_ProcessPendingEvents(PLEventQueue * self=0x00f76250) Line 628 C xpcom.dll!_md_EventReceiverProc(HWND__ * hwnd=0x09461db2, unsigned int uMsg=0x0000c127, unsigned int wParam=0x00000000, long lParam=0x00f76250) Line 1434 C user32.dll!77d43a50()
->me
Assignee: mostafah → cst
Attached patch Patch v0.1 (obsolete) — Splinter Review
I don't know if this works. I'll have to build calendar and reproduce the problem before I can test it.
Attached patch Patch v0.11 (obsolete) — Splinter Review
Attachment #157277 - Attachment is obsolete: true
Attached patch Patch v0.12 (obsolete) — Splinter Review
Attachment #157278 - Attachment is obsolete: true
Many thanks to Neil for explaining stuff.
Attachment #157279 - Attachment is obsolete: true
Attachment #157283 - Flags: first-review?(shaver)
Attachment #157283 - Flags: second-review?
Attachment #157283 - Flags: first-review?(shaver)
Attachment #157283 - Flags: first-review+
Attachment #157283 - Flags: second-review? → second-review?(timeless)
Attachment #157283 - Flags: second-review?(timeless) → second-review?(mostafah)
Was fixed already, but on all Calendar Bugs, when accepting, CC Mostafah
Comment on attachment 157283 [details] [diff] [review] Patch v1.0 (checked in) sr is not needed so I'll check it in.
Attachment #157283 - Flags: second-review?(mostafah) → second-review+
Attachment #157283 - Attachment description: Patch v1.0 → Patch v1.0 (checked in)
Status: UNCONFIRMED → RESOLVED
Closed: 21 years ago
Resolution: --- → FIXED
The bugspam monkeys have been set free and are feeding on Calendar :: Sunbird Only. Be afraid for your sanity!
QA Contact: gurganbl → sunbird
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: