[FIX]###!!! ASSERTION: didn't call Disconnect: '!mTarget', file c:/mozilla/content/events/src/nsEventListenerManager.cpp, line 428 loading an HTML document with onload="document.write('test')"

RESOLVED FIXED in mozilla1.9alpha1

Status

()

defect
P3
normal
RESOLVED FIXED
13 years ago
4 months ago

People

(Reporter: asqueella, Assigned: bzbarsky)

Tracking

({assertion, testcase, verified1.8.1})

Trunk
mozilla1.9alpha1
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(Not tracked)

Details

()

Attachments

(1 attachment)

nsEventListenerManager::~nsEventListenerManager()  Line 428	C++
nsEventListenerManager::`scalar deleting destructor'() 	C++
nsEventListenerManager::Release()  Line 481	C++
nsCOMPtr<nsIEventListenerManager>::assign_assuming_AddRef(newPtr=0x00000000)  Line 569	C++
nsCOMPtr<nsIEventListenerManager>::assign_with_AddRef(rawPtr=0x00000000)  Line 1225	C++
nsCOMPtr<nsIEventListenerManager>::operator=(rhs=0x00000000)  Line 714	C++
nsDocument::ResetToURI(aURI=0x03cb8330, aLoadGroup=0x03b51bd8)  Line 959	C++
nsHTMLDocument::ResetToURI(aURI=0x03cb8330, aLoadGroup=0x03b51bd8)  Line 413	C++
nsDocument::Reset(aChannel=0x03fce098, aLoadGroup=0x03b51bd8)  Line 897	C++
nsHTMLDocument::Reset(aChannel=0x03fce098, aLoadGroup=0x03b51bd8)  Line 401	C++
nsHTMLDocument::OpenCommon(aContentType={...}, aReplace=0x00000000)  Line 2085	C++
nsHTMLDocument::Open(aContentType={...}, aReplace=0x00000000, aReturn=0x0012db8c)  Line 2195	C++
nsHTMLDocument::Open()  Line 2188	C++
nsHTMLDocument::WriteCommon(aText={...}, aNewlineTerminate=0x00000000)  Line 2292	C++
nsHTMLDocument::ScriptWriteCommon(aNewlineTerminate=0x00000000)  Line 2382	C++
nsHTMLDocument::Write()  Line 2411	C++
XPTC_InvokeByIndex(that=0x00000014, methodIndex=0x00000000, paramCount=0x0012de68, params=0x004a3b20)  Line 102	C++
XPCWrappedNative::CallMethod(ccx={...}, mode=0x00000014)  Line 2162	C++
XPCWrappedNative::CallMethod(ccx={...}, mode=CALL_METHOD)  Line 2162	C++
XPC_WN_CallMethod(cx=0x03b0f338, obj=JSObject [5 slots], argc=0x00000001, argv=0x04ad87fc, vp=0x0012e138)  Line 1455	C++
js_Invoke(cx=0x03b0f338, argc=0x00000001, flags=0x00000000)  Line 1373	C
js_Interpret(cx=0x03b0f338, pc=0x03fbf962, result=0x0012ecc0)  Line 4108	C
js_Invoke(cx=0x03b0f338, argc=0x00000001, flags=0x00000002)  Line 1392	C
js_InternalInvoke(cx=0x03b0f338, obj=JSObject [80 slots], fval=0x03f29cd8, flags=0x00000000, argc=0x00000001, argv=0x04ad87d8, rval=0x0012ee3c)  Line 1467	C
JS_CallFunctionValue(cx=0x03b0f338, obj=JSObject [80 slots], fval=0x03f29cd8, argc=0x00000001, argv=0x04ad87d8, rval=0x0012ee3c)  Line 4419	C
nsJSContext::CallEventHandler(aTarget=0x03f46ee4, aScope=0x03f2a458, aHandler=0x03f29cd8, aargv=0x04ad70d8, arv=0x0012efac)  Line 1745	C++
nsJSEventListener::HandleEvent(aEvent=0x03f1f468)  Line 212	C++
nsEventListenerManager::HandleEventSubType(aListenerStruct=0x03fbfa70, aListener=0x03fbf778, aDOMEvent=0x03f1f468, aCurrentTarget=0x03b0efa0, aSubType=0x00000001, aPhaseFlags=0x00000006)  Line 1646	C++
nsEventListenerManager::HandleEvent(aPresContext=0x03fc30e0, aEvent=0x0012f370, aDOMEvent=0x0012f274, aCurrentTarget=0x03b0efa0, aFlags=0x00000006, aEventStatus=0x0012f278)  Line 1750	C++
nsEventTargetChainItem::HandleEvent(aVisitor={...}, aFlags=0x00000006)  Line 356	C++
nsEventTargetChainItem::HandleEventTargetChain(aVisitor={...}, aFlags=0x00000006, aCallback=0x00000000)  Line 433	C++
nsEventDispatcher::Dispatch(aTarget=0x03b0efa0, aPresContext=0x03fc30e0, aEvent=0x0012f370, aDOMEvent=0x00000000, aEventStatus=0x0012f36c, aCallback=0x00000000, aTargetIsChromeHandler=0x00000000)  Line 639	C++
DocumentViewerImpl::LoadComplete(aStatus=0x00000000)  Line 1068	C++
nsDocShell::EndPageLoad(aProgress=0x03b51714, aChannel=0x03f5a568, aStatus=0x00000000)  Line 4874	C++
nsWebShell::EndPageLoad(aProgress=0x03b51714, channel=0x03f5a568, aStatus=0x00000000)  Line 975	C++
nsDocShell::OnStateChange(aProgress=0x03b51714, aRequest=0x03f5a568, aStateFlags=0x00020010, aStatus=0x00000000)  Line 4789	C++
nsDocLoader::FireOnStateChange(aProgress=0x03b51714, aRequest=0x03f5a568, aStateFlags=0x00020010, aStatus=0x00000000)  Line 1232	C++
nsDocLoader::doStopDocumentLoad(request=0x03f5a568, aStatus=0x00000000)  Line 865	C++
nsDocLoader::DocLoaderIsEmpty()  Line 761	C++
nsDocLoader::OnStopRequest(aRequest=0x03e64bf8, aCtxt=0x00000000, aStatus=0x00000000)  Line 678	C++
nsLoadGroup::RemoveRequest(request=0x03e64bf8, ctxt=0x00000000, aStatus=0x00000000)  Line 685	C++
nsDocument::DoUnblockOnload()  Line 5111	C++
nsUnblockOnloadEvent::Run()  Line 5070	C++
nsThread::ProcessNextEvent(mayWait=0x00000001, result=0x0012fbc4)  Line 483	C++
NS_ProcessNextEvent_P(thread=0x00b4a580, mayWait=0x00000001)  Line 225	C++
nsBaseAppShell::Run()  Line 153	C++
nsAppStartup::Run()  Line 171	C++
XRE_main(argc=0x00000003, argv=0x00b47b70, aAppData=0x004036b0)  Line 2465	C++
main(argc=0x00000003, argv=0x00b47b70)  Line 61	C++
Posted patch FixSplinter Review
Assignee: events → bzbarsky
Status: NEW → ASSIGNED
Attachment #239956 - Flags: superreview?(jst)
Attachment #239956 - Flags: review?(jst)
OS: Windows XP → All
Priority: -- → P3
Hardware: PC → All
Summary: ###!!! ASSERTION: didn't call Disconnect: '!mTarget', file c:/mozilla/content/events/src/nsEventListenerManager.cpp, line 428 loading an HTML document with onload="document.write('test')" → [FIX]###!!! ASSERTION: didn't call Disconnect: '!mTarget', file c:/mozilla/content/events/src/nsEventListenerManager.cpp, line 428 loading an HTML document with onload="document.write('test')"
Target Milestone: --- → mozilla1.9alpha
Comment on attachment 239956 [details] [diff] [review]
Fix

r+sr=jst
Attachment #239956 - Flags: superreview?(jst)
Attachment #239956 - Flags: superreview+
Attachment #239956 - Flags: review?(jst)
Attachment #239956 - Flags: review+
Checked in.
Status: ASSIGNED → RESOLVED
Closed: 13 years ago
Resolution: --- → FIXED
I should have added that assertion ages ago; glad it caught this, and we probably want to consider it for 1.8.1.1.
Flags: blocking1.8.1.1?
Perhaps even 1.8.1, if you think it's worth nominating.
Comment on attachment 239956 [details] [diff] [review]
Fix

Hmm... Probably worth it, yes.  I think it should be pretty safe.
Attachment #239956 - Flags: approval1.8.1?
Comment on attachment 239956 [details] [diff] [review]
Fix

Approved for RC2.
Attachment #239956 - Flags: approval1.8.1? → approval1.8.1+
Fixed for 1.8.1.
Flags: blocking1.8.1.1?
Keywords: fixed1.8.1
verified with Mac and Windows FF2rc2
Component: Event Handling → User events and focus handling
You need to log in before you can comment on or make changes to this bug.