Closed Bug 294529 Opened 20 years ago Closed 7 years ago

crash dereferencing dead object [@ XPCNativeInterface::GetIID]

Categories

(Core :: XPConnect, defect)

x86
Windows XP
defect
Not set
major

Tracking

()

RESOLVED INCOMPLETE

People

(Reporter: timeless, Assigned: timeless)

Details

(Keywords: assertion, crash)

Crash Data

Attachments

(1 file)

[3980] 0[3f4bc0]: nsComponentManager:
CreateInstanceByContractID(@mozilla.org/scripterror;1) succeeded
[3980] 0[3f4bc0]: ###!!! ASSERTION: bad method name: '0', file
r:/mozilla/js/src/xpconnect/src/xpcwrappednativeinfo.cpp, line 372
[3980] 0[3f4bc0]: nsComponentManager:
CreateInstanceByContractID(@mozilla.org/scripterror;1) succeeded
[3980] 0[3f4bc0]: ###!!! ASSERTION: bad constant name: '0', file
r:/mozilla/js/src/xpconnect/src/xpcwrappednativeinfo.cpp, line 416
[3980] 0[3f4bc0]: ###!!! ASSERTION: bad: '!IsMarked()', file
r:\mozilla\js\src\xpconnect\src\xpcprivate.h, line 1182
[3980] 0[3f4bc0]: ###!!! ASSERTION: bad: '!IsMarked()', file
r:\mozilla\js\src\xpconnect\src\xpcprivate.h, line 1182
[3980] 0[3f4bc0]: nsComponentManager:
CreateInstanceByContractID(@mozilla.org/scripterror;1) succeeded
[3980] 0[3f4bc0]: ###!!! ASSERTION: bad: '!IsMarked()', file
r:\mozilla\js\src\xpconnect\src\xpcprivate.h, line 1182
[3980] 0[3f4bc0]: ###!!! ASSERTION: should not have different iface!: 'info1 !=
info2', file r:/mozilla/js/src/xpconnect/src/xpcwrappednative.cpp, line 2743

[0 - XPCNativeInterface::GetIID]
+	this	0x039a47b0 {mInfo={mRawPtr=0xdddddddd } mName=0xdddddddd
mMemberCount=0xdddd ...}	const XPCNativeInterface * const
[1 - InterfacesAreRelated]
+	iface1	0x039a2ba0 {mInfo={mRawPtr=0xdddddddd } mName=0xdddddddd
mMemberCount=0xdddd ...}	XPCNativeInterface *
+	iface2	0x039a47b0 {mInfo={mRawPtr=0xdddddddd } mName=0xdddddddd
mMemberCount=0xdddd ...}	XPCNativeInterface *
+	info1	0xdddddddd	nsIInterfaceInfo *
	match	0x011d4304	int
+	info2	0xdddddddd	nsIInterfaceInfo *
[2 - DEBUG_ReportShadowedMembers]
	ifaceInnerName	0xdddddddd	long
+	ifaceInner	0x039a2ba0 {mInfo={mRawPtr=0xdddddddd } mName=0xdddddddd
mMemberCount=0xdddd ...}	XPCNativeInterface *
	memberCountInner	0x5f53	unsigned short
	memberOuterName	0xdddddddd	long
+	memberOuter	0x039a47bc {mName=0xdddddddd mVal=0xdddddddd mIndex=0xdddd ...}
XPCNativeMember *
	memberCountOuter	0xdddd	unsigned short
	ifaceOuterName	0xdddddddd	long
+	ifaceOuter	0x039a47b0 {mInfo={mRawPtr=0xdddddddd } mName=0xdddddddd
mMemberCount=0xdddd ...}	XPCNativeInterface *
	seen	0x00000080	int
+	set	0x019e1230 {mMemberCount=0xbbc9 mInterfaceCount=0x0004
mInterfaces=0x019e1234 }	XPCNativeSet *
+	wrapper	0x00000000 {mRefCnt={mValue=??? } _mOwningThread={mThread=??? }
mMaybeScope=??? ...}	XPCWrappedNative *
+	proto	0x019d6b98 {gDEBUG_LiveProtoCount=0x00000012 mScope=0x01884688
{gScopes=0x01884688 {gScopes=0x01884688 {gScopes=0x01884688
gDyingScopes=0x00000000 mRuntime=0x010dcbd0 ...} gDyingScopes=0x00000000
{gScopes=0x01884688 gDyingScopes=0x00000000 mRuntime=??? ...}
mRuntime=0x010dcbd0 {DEBUG_WrappedNativeHashtable=0x010f2878 mStrings=0x011e3c7c
mStrIDs=0x010dcbd4 ...} ...} gDyingScopes=0x00000000 {gScopes=0x01884688
{gScopes=0x01884688 gDyingScopes=0x00000000 mRuntime=0x010dcbd0 ...}
gDyingScopes=0x00000000 {gScopes=0x01884688 gDyingScopes=0x00000000 mRuntime=???
...} mRuntime=??? ...} mRuntime=0x010dcbd0
{DEBUG_WrappedNativeHashtable=0x010f2878 {ops=0x012d536c data=0x00000000
hashShift=0x0019 ...} mStrings=0x011e3c7c char const * * XPCJSRuntime::mStrings
mStrIDs=0x010dcbd4 ...} ...} mJSProtoObject=0x00000000 {map=??? slots=??? }
...}	XPCWrappedNativeProto *
	localNext	0x0000002a	int
+	header	0x0012e49c "!!!Object wrapped by XPConnect has members whose names
shadow each other!!!"	const char [76]
	j	0x0000	unsigned short
	m	0xe794	unsigned short
+	si	0x019ebe28 {mCallback={mRawPtr=0x039aba30 {mRefCnt={mValue=0x00000006 }
_mOwningThread={mThread=0x003f4bc0 } sDOMJSClass={name=0x02b5c04c
flags=0x00000001 addProperty=0x012012f3 ...} ...} } mShared=0x019e60b0
{mFlags={mFlags=0x0bee1204 } mJSClass={name=0x0399b158 "MouseEvent"
flags=0x0000000d addProperty=0x012012f3 _JS_PropertyStub ...} } }
XPCNativeScriptableInfo *
	printedHeader	0x00000000	int
	k	0x0002	unsigned short
+	rt	0x010dcbd0 {DEBUG_WrappedNativeHashtable=0x010f2878 {ops=0x012d536c
stub_ops data=0x00000000 hashShift=0x0019 ...} mStrings=0x011e3c7c char const *
* XPCJSRuntime::mStrings mStrIDs=0x010dcbd4 ...}	XPCJSRuntime *
+	SeenSets	0x011e4408 SeenSets	XPCNativeSet * [128]
	QIName	0x0106ebcc	long
	nextSeenSet	0x0000002a	int
	i	0x0001	unsigned short
	ifaceCount	0x0004	unsigned short
[3 - XPCWrappedNativeProto::Init]
+	this	0x019d6b98 {gDEBUG_LiveProtoCount=0x00000012 mScope=0x01884688
{gScopes=0x01884688 {gScopes=0x01884688 {gScopes=0x01884688
gDyingScopes=0x00000000 mRuntime=0x010dcbd0 ...} gDyingScopes=0x00000000
{gScopes=0x01884688 gDyingScopes=0x00000000 mRuntime=??? ...}
mRuntime=0x010dcbd0 {DEBUG_WrappedNativeHashtable=0x010f2878 mStrings=0x011e3c7c
mStrIDs=0x010dcbd4 ...} ...} gDyingScopes=0x00000000 {gScopes=0x01884688
{gScopes=0x01884688 gDyingScopes=0x00000000 mRuntime=0x010dcbd0 ...}
gDyingScopes=0x00000000 {gScopes=0x01884688 gDyingScopes=0x00000000 mRuntime=???
...} mRuntime=??? ...} mRuntime=0x010dcbd0
{DEBUG_WrappedNativeHashtable=0x010f2878 {ops=0x012d536c data=0x00000000
hashShift=0x0019 ...} mStrings=0x011e3c7c char const * * XPCJSRuntime::mStrings
mStrIDs=0x010dcbd4 ...} ...} mJSProtoObject=0x00000000 {map=??? slots=??? }
...}	XPCWrappedNativeProto * const
	retval	0x00000000	int

 	xpc3250.dll!XPCNativeInterface::GetIID()  Line 347 + 0x16	C++
 	xpc3250.dll!InterfacesAreRelated(XPCNativeInterface * iface1=0x039a2ba0,
XPCNativeInterface * iface2=0x039a47b0)  Line 2749 + 0xc	C++
>	xpc3250.dll!DEBUG_ReportShadowedMembers(XPCNativeSet * set=0x019e1230,
XPCWrappedNative * wrapper=0x00000000, XPCWrappedNativeProto * proto=0x019d6b98)
 Line 2931 + 0x13	C++
 	xpc3250.dll!XPCWrappedNativeProto::Init(XPCCallContext & ccx={...}, const
XPCNativeScriptableCreateInfo * scriptableCreateInfo=0x0012e71c)  Line 114 +
0x12	C++
 	xpc3250.dll!XPCWrappedNativeProto::GetNewOrUsed(XPCCallContext & ccx={...},
XPCWrappedNativeScope * Scope=0x01884688, nsIClassInfo * ClassInfo=0x039aba34,
const XPCNativeScriptableCreateInfo * ScriptableCreateInfo=0x0012e71c, int
ForceNoSharing=0x00000000)  Line 222 + 0x23	C++
 	xpc3250.dll!XPCWrappedNative::GetNewOrUsed(XPCCallContext & ccx={...},
nsISupports * Object=0x038f9298, XPCWrappedNativeScope * Scope=0x01884688,
XPCNativeInterface * Interface=0x03966580, XPCWrappedNative * *
resultWrapper=0x0012e74c)  Line 359 + 0x1c	C++
 	xpc3250.dll!XPCConvert::NativeInterface2JSObject(XPCCallContext & ccx={...},
nsIXPConnectJSObjectHolder * * dest=0x0012e9f0, nsISupports * src=0x038f9298,
const nsID * iid=0x02ac36e8, JSObject * scope=0x01862090, unsigned int *
pErr=0x0012e790)  Line 1060 + 0x1e	C++
 	xpc3250.dll!nsXPConnect::WrapNative(JSContext * aJSContext=0x0185f350,
JSObject * aScope=0x01862090, nsISupports * aCOMObj=0x038f9298, const nsID &
aIID={...}, nsIXPConnectJSObjectHolder * * _retval=0x0012e9f0)  Line 567 + 0x1d	C++
 	gklayout.dll!nsJSEventListener::HandleEvent(nsIDOMEvent * aEvent=0x038f9298) 
Line 189 + 0x39	C++
 	gklayout.dll!nsEventListenerManager::HandleEventSubType(nsListenerStruct *
aListenerStruct=0x019eeae8, nsIDOMEvent * aDOMEvent=0x038f9298,
nsIDOMEventTarget * aCurrentTarget=0x019fd150, unsigned int aSubType=0x00000010,
unsigned int aPhaseFlags=0x00000002)  Line 1557 + 0x14	C++
 	gklayout.dll!nsEventListenerManager::HandleEvent(nsPresContext *
aPresContext=0x011361d0, nsEvent * aEvent=0x0012f13c, nsIDOMEvent * *
aDOMEvent=0x0012f0ec, nsIDOMEventTarget * aCurrentTarget=0x019fd150, unsigned
int aFlags=0x00000002, nsEventStatus * aEventStatus=0x0012f138)  Line 1656	C++
 	gklayout.dll!nsGenericElement::HandleDOMEvent(nsPresContext *
aPresContext=0x011361d0, nsEvent * aEvent=0x0012f13c, nsIDOMEvent * *
aDOMEvent=0x0012f0ec, unsigned int aFlags=0x00000002, nsEventStatus *
aEventStatus=0x0012f138)  Line 2103	C++
 	gklayout.dll!nsGenericHTMLElement::HandleDOMEventForAnchors(nsPresContext *
aPresContext=0x011361d0, nsEvent * aEvent=0x0012f13c, nsIDOMEvent * *
aDOMEvent=0x0012f0ec, unsigned int aFlags=0x00000002, nsEventStatus *
aEventStatus=0x0012f138)  Line 1461 + 0x1f	C++
 	gklayout.dll!nsHTMLAnchorElement::HandleDOMEvent(nsPresContext *
aPresContext=0x011361d0, nsEvent * aEvent=0x0012f13c, nsIDOMEvent * *
aDOMEvent=0x0012f0ec, unsigned int aFlags=0x00000002, nsEventStatus *
aEventStatus=0x0012f138)  Line 287	C++
 	gklayout.dll!nsGenericElement::HandleDOMEvent(nsPresContext *
aPresContext=0x011361d0, nsEvent * aEvent=0x0012f13c, nsIDOMEvent * *
aDOMEvent=0x0012f0ec, unsigned int aFlags=0x00000007, nsEventStatus *
aEventStatus=0x0012f138)  Line 2132 + 0x39	C++
 	gklayout.dll!nsHTMLImageElement::HandleDOMEvent(nsPresContext *
aPresContext=0x011361d0, nsEvent * aEvent=0x0012f13c, nsIDOMEvent * *
aDOMEvent=0x00000000, unsigned int aFlags=0x00000001, nsEventStatus *
aEventStatus=0x0012f138)  Line 508	C++
 	gklayout.dll!nsEventStateManager::DispatchMouseEvent(nsGUIEvent *
aEvent=0x0012f87c, unsigned int aMessage=0x0000014b, nsIContent *
aTargetContent=0x019efcc0, nsIContent * aRelatedContent=0x00000000)  Line 2513	C++
 	gklayout.dll!nsEventStateManager::NotifyMouseOver(nsGUIEvent *
aEvent=0x0012f87c, nsIContent * aContent=0x019efcc0)  Line 2627 + 0x21	C++
 	gklayout.dll!nsEventStateManager::GenerateMouseEnterExit(nsGUIEvent *
aEvent=0x0012f87c)  Line 2660	C++
 	gklayout.dll!nsEventStateManager::PreHandleEvent(nsPresContext *
aPresContext=0x011361d0, nsEvent * aEvent=0x0012f87c, nsIFrame *
aTargetFrame=0x039f230c, nsEventStatus * aStatus=0x0012f610, nsIView *
aView=0x039f20a0)  Line 479	C++
 	gklayout.dll!PresShell::HandleEventInternal(nsEvent * aEvent=0x0012f87c,
nsIView * aView=0x039f20a0, unsigned int aFlags=0x00000001, nsEventStatus *
aStatus=0x0012f610)  Line 6289 + 0x34	C++
 	gklayout.dll!PresShell::HandleEvent(nsIView * aView=0x039f20a0, nsGUIEvent *
aEvent=0x0012f87c, nsEventStatus * aEventStatus=0x0012f610, int
aForceHandle=0x00000000, int & aHandled=0x00000001)  Line 6142 + 0x19	C++
 	gklayout.dll!nsViewManager::HandleEvent(nsView * aView=0x0394d510, nsGUIEvent
* aEvent=0x0012f87c, int aCaptured=0x00000000)  Line 2506	C++
 	gklayout.dll!nsViewManager::DispatchEvent(nsGUIEvent * aEvent=0x0012f87c,
nsEventStatus * aStatus=0x0012f758)  Line 2228 + 0x14	C++
 	gklayout.dll!HandleEvent(nsGUIEvent * aEvent=0x0012f87c)  Line 174	C++
 	gkwidget.dll!nsWindow::DispatchEvent(nsGUIEvent * event=0x0012f87c,
nsEventStatus & aStatus=nsEventStatus_eIgnore)  Line 1181 + 0xa	C++
 	gkwidget.dll!nsWindow::DispatchWindowEvent(nsGUIEvent * event=0x0012f87c) 
Line 1202	C++
 	gkwidget.dll!nsWindow::DispatchMouseEvent(unsigned int aEventType=0x0000012c,
unsigned int wParam=0x00000000, nsPoint * aPoint=0x00000000)  Line 5903 + 0x15	C++
 	gkwidget.dll!ChildWindow::DispatchMouseEvent(unsigned int
aEventType=0x0000012c, unsigned int wParam=0x00000000, nsPoint *
aPoint=0x00000000)  Line 6159	C++
 	gkwidget.dll!nsWindow::ProcessMessage(unsigned int msg=0x00000200, unsigned
int wParam=0x00000000, long lParam=0x00670183, long * aRetValue=0x0012fd50) 
Line 4533 + 0x1c	C++
 	gkwidget.dll!nsWindow::WindowProc(HWND__ * hWnd=0x00060f9a, unsigned int
msg=0x00000200, unsigned int wParam=0x00000000, long lParam=0x00670183)  Line
1473 + 0x1b	C++
 	user32.dll!_InternalCallWinProc@20()  + 0x28	
 	user32.dll!_UserCallWinProcCheckWow@32()  + 0xb7	
 	user32.dll!_DispatchMessageWorker@8()  + 0xdc	
 	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	

Given that result is JS_FALSE, i think the right thing to do is not bother checking.

here's an assertion flavor:
+	buf	0x0012dff4 "###!!! ASSERTION: should not have different iface!: 'info1 !=
info2', file r:/mozilla/js/src/xpconnect/src/xpcwrappednative.cpp, line 2743"
char [1000]
again, result is JS_FALSE.

 	xpcom_core.dll!nsDebug::Assertion(const char * aStr=0x011ccefc, const char *
aExpr=0x011cceec, const char * aFile=0x011cceb4, int aLine=0x00000ab7)  Line 109	C++
 	xpc3250.dll!InterfacesAreRelated(XPCNativeInterface * iface1=0x03adc190,
XPCNativeInterface * iface2=0x03a42b98)  Line 2743 + 0x22	C++
 	xpc3250.dll!DEBUG_ReportShadowedMembers(XPCNativeSet * set=0x03a326b0,
XPCWrappedNative * wrapper=0x00000000, XPCWrappedNativeProto * proto=0x03a326f8)
 Line 2931 + 0x13	C++
>	xpc3250.dll!XPCWrappedNativeProto::Init(XPCCallContext & ccx={...}, const
XPCNativeScriptableCreateInfo * scriptableCreateInfo=0x0012e71c)  Line 114 +
0x12	C++
 	xpc3250.dll!XPCWrappedNativeProto::GetNewOrUsed(XPCCallContext & ccx={...},
XPCWrappedNativeScope * Scope=0x0113d340, nsIClassInfo * ClassInfo=0x03ad073c,
const XPCNativeScriptableCreateInfo * ScriptableCreateInfo=0x0012e71c, int
ForceNoSharing=0x00000000)  Line 222 + 0x23	C++
 	xpc3250.dll!XPCWrappedNative::GetNewOrUsed(XPCCallContext & ccx={...},
nsISupports * Object=0x03a04028, XPCWrappedNativeScope * Scope=0x0113d340,
XPCNativeInterface * Interface=0x03b0e868, XPCWrappedNative * *
resultWrapper=0x0012e74c)  Line 359 + 0x1c	C++
 	xpc3250.dll!XPCConvert::NativeInterface2JSObject(XPCCallContext & ccx={...},
nsIXPConnectJSObjectHolder * * dest=0x0012e9f0, nsISupports * src=0x03a04028,
const nsID * iid=0x02ac36e8, JSObject * scope=0x018326d0, unsigned int *
pErr=0x0012e790)  Line 1060 + 0x1e	C++
 	xpc3250.dll!nsXPConnect::WrapNative(JSContext * aJSContext=0x019efa78,
JSObject * aScope=0x018326d0, nsISupports * aCOMObj=0x03a04028, const nsID &
aIID={...}, nsIXPConnectJSObjectHolder * * _retval=0x0012e9f0)  Line 567 + 0x1d	C++
 	gklayout.dll!nsJSEventListener::HandleEvent(nsIDOMEvent * aEvent=0x03a04028) 
Line 189 + 0x39	C++
 	gklayout.dll!nsEventListenerManager::HandleEventSubType(nsListenerStruct *
aListenerStruct=0x03ac34d8, nsIDOMEvent * aDOMEvent=0x03a04028,
nsIDOMEventTarget * aCurrentTarget=0x019dcfd0, unsigned int aSubType=0x00000010,
unsigned int aPhaseFlags=0x00000002)  Line 1557 + 0x14	C++
 	gklayout.dll!nsEventListenerManager::HandleEvent(nsPresContext *
aPresContext=0x03ac5578, nsEvent * aEvent=0x0012f13c, nsIDOMEvent * *
aDOMEvent=0x0012f0ec, nsIDOMEventTarget * aCurrentTarget=0x019dcfd0, unsigned
int aFlags=0x00000002, nsEventStatus * aEventStatus=0x0012f138)  Line 1656	C++
 	gklayout.dll!nsGenericElement::HandleDOMEvent(nsPresContext *
aPresContext=0x03ac5578, nsEvent * aEvent=0x0012f13c, nsIDOMEvent * *
aDOMEvent=0x0012f0ec, unsigned int aFlags=0x00000002, nsEventStatus *
aEventStatus=0x0012f138)  Line 2103	C++
 	gklayout.dll!nsGenericHTMLElement::HandleDOMEventForAnchors(nsPresContext *
aPresContext=0x03ac5578, nsEvent * aEvent=0x0012f13c, nsIDOMEvent * *
aDOMEvent=0x0012f0ec, unsigned int aFlags=0x00000002, nsEventStatus *
aEventStatus=0x0012f138)  Line 1461 + 0x1f	C++
 	gklayout.dll!nsHTMLAnchorElement::HandleDOMEvent(nsPresContext *
aPresContext=0x03ac5578, nsEvent * aEvent=0x0012f13c, nsIDOMEvent * *
aDOMEvent=0x0012f0ec, unsigned int aFlags=0x00000002, nsEventStatus *
aEventStatus=0x0012f138)  Line 287	C++
 	gklayout.dll!nsGenericElement::HandleDOMEvent(nsPresContext *
aPresContext=0x03ac5578, nsEvent * aEvent=0x0012f13c, nsIDOMEvent * *
aDOMEvent=0x0012f0ec, unsigned int aFlags=0x00000007, nsEventStatus *
aEventStatus=0x0012f138)  Line 2132 + 0x39	C++
 	gklayout.dll!nsHTMLImageElement::HandleDOMEvent(nsPresContext *
aPresContext=0x03ac5578, nsEvent * aEvent=0x0012f13c, nsIDOMEvent * *
aDOMEvent=0x00000000, unsigned int aFlags=0x00000001, nsEventStatus *
aEventStatus=0x0012f138)  Line 508	C++
 	gklayout.dll!nsEventStateManager::DispatchMouseEvent(nsGUIEvent *
aEvent=0x0012f87c, unsigned int aMessage=0x0000014b, nsIContent *
aTargetContent=0x03ac37e0, nsIContent * aRelatedContent=0x00000000)  Line 2513	C++
 	gklayout.dll!nsEventStateManager::NotifyMouseOver(nsGUIEvent *
aEvent=0x0012f87c, nsIContent * aContent=0x03ac37e0)  Line 2627 + 0x21	C++
 	gklayout.dll!nsEventStateManager::GenerateMouseEnterExit(nsGUIEvent *
aEvent=0x0012f87c)  Line 2660	C++
 	gklayout.dll!nsEventStateManager::PreHandleEvent(nsPresContext *
aPresContext=0x03ac5578, nsEvent * aEvent=0x0012f87c, nsIFrame *
aTargetFrame=0x03af6174, nsEventStatus * aStatus=0x0012f610, nsIView *
aView=0x03ae2f08)  Line 479	C++
 	gklayout.dll!PresShell::HandleEventInternal(nsEvent * aEvent=0x0012f87c,
nsIView * aView=0x03ae2f08, unsigned int aFlags=0x00000001, nsEventStatus *
aStatus=0x0012f610)  Line 6289 + 0x34	C++
 	gklayout.dll!PresShell::HandleEvent(nsIView * aView=0x03ae2f08, nsGUIEvent *
aEvent=0x0012f87c, nsEventStatus * aEventStatus=0x0012f610, int
aForceHandle=0x00000000, int & aHandled=0x00000001)  Line 6142 + 0x19	C++
 	gklayout.dll!nsViewManager::HandleEvent(nsView * aView=0x0197c938, nsGUIEvent
* aEvent=0x0012f87c, int aCaptured=0x00000000)  Line 2506	C++
 	gklayout.dll!nsViewManager::DispatchEvent(nsGUIEvent * aEvent=0x0012f87c,
nsEventStatus * aStatus=0x0012f758)  Line 2228 + 0x14	C++
 	gklayout.dll!HandleEvent(nsGUIEvent * aEvent=0x0012f87c)  Line 174	C++
 	gkwidget.dll!nsWindow::DispatchEvent(nsGUIEvent * event=0x0012f87c,
nsEventStatus & aStatus=nsEventStatus_eIgnore)  Line 1181 + 0xa	C++
 	gkwidget.dll!nsWindow::DispatchWindowEvent(nsGUIEvent * event=0x0012f87c) 
Line 1202	C++
 	gkwidget.dll!nsWindow::DispatchMouseEvent(unsigned int aEventType=0x0000012c,
unsigned int wParam=0x00000000, nsPoint * aPoint=0x00000000)  Line 5903 + 0x15	C++
 	gkwidget.dll!ChildWindow::DispatchMouseEvent(unsigned int
aEventType=0x0000012c, unsigned int wParam=0x00000000, nsPoint *
aPoint=0x00000000)  Line 6159	C++
 	gkwidget.dll!nsWindow::ProcessMessage(unsigned int msg=0x00000200, unsigned
int wParam=0x00000000, long lParam=0x00610195, long * aRetValue=0x0012fd50) 
Line 4533 + 0x1c	C++
 	gkwidget.dll!nsWindow::WindowProc(HWND__ * hWnd=0x00040e10, unsigned int
msg=0x00000200, unsigned int wParam=0x00000000, long lParam=0x00610195)  Line
1473 + 0x1b	C++
 	user32.dll!_InternalCallWinProc@20()  + 0x28	
 	user32.dll!_UserCallWinProcCheckWow@32()  + 0xb7	
 	user32.dll!_DispatchMessageWorker@8()  + 0xdc	
 	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
death can also happen via:

###!!! ASSERTION: You can't dereference a NULL nsCOMPtr with operator->().:
'mRawPtr != 0', file
r:\mozilla\all-i686-pc-cygwin\dist\include\xpcom\nsCOMPtr.h, line 849

	xpcom_core.dll!nsDebug::Assertion(const char * aStr=0x011b7250, const
char * aExpr=0x011b7294, const char * aFile=0x011b72a4, int aLine=0x00000351) 
Line 109   C++
	xpc3250.dll!nsCOMPtr<nsIInterfaceInfo>::operator->()  Line 849 + 0x22  
C++
	xpc3250.dll!XPCNativeInterface::GetIID()  Line 347 + 0x8	C++
	xpc3250.dll!InterfacesAreRelated(XPCNativeInterface *
iface1=0x03adc190, XPCNativeInterface * iface2=0x03a42b98)  Line 2749 + 0xc    
  C++
>	xpc3250.dll!DEBUG_ReportShadowedMembers(XPCNativeSet * set=0x03a326b0,
XPCWrappedNative * wrapper=0x00000000, XPCWrappedNativeProto *
proto=0x03a326f8)  Line 2931 + 0x13	  C++
	xpc3250.dll!XPCWrappedNativeProto::Init(XPCCallContext & ccx={...},
const XPCNativeScriptableCreateInfo * scriptableCreateInfo=0x0012e71c)	Line
114 + 0x12     C++
Assignee: dbradley → timeless
Status: UNCONFIRMED → ASSIGNED
Attachment #183866 - Flags: superreview?(roc)
Attachment #183866 - Flags: review?(dbradley)
Comment on attachment 183866 [details] [diff] [review]
only check for shadows if the thing works

Sorry I waited so long. Your patch is stale. retval is now ok, and there's
already a test of ok. So move the statement within that test and things should
be ok. Update and report back, sorry for the delay.
Attachment #183866 - Flags: review?(dbradley) → review-
this seems to happen a lot when you use the beta version of the Session Manager extension.
QA Contact: pschwartau → xpconnect
Crash Signature: [@ XPCNativeInterface::GetIID]
Status: ASSIGNED → RESOLVED
Closed: 7 years ago
Resolution: --- → INCOMPLETE
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: