Closed Bug 74425 Opened 25 years ago Closed 24 years ago

Assertion in nsImapMailFolder::InitCopyState()

Categories

(MailNews Core :: Networking: IMAP, defect, P3)

x86
Windows NT
defect

Tracking

(Not tracked)

VERIFIED DUPLICATE of bug 72322

People

(Reporter: kinmoz, Assigned: naving)

Details

In my Mozilla 04/02/01 debug Win32 build, I see an assertion being thrown from nsImapMailFolder::InitCopyState() when I hit the Delete key while an IMAP message with a large attatchement is loading. If I continue past the assertion, I have to wait till the entire attatchment/message is loaded, and then my message disappears. Here's the trace: NTDLL! 77f762e8() nsDebug::Assertion(const char * 0x03cd477c, const char * 0x03cd476c, const char * 0x03cd4738, int 5120) line 286 + 13 bytes nsImapMailFolder::InitCopyState(nsISupports * 0x02ad5100, nsISupportsArray * 0x07ef8110, int 1, int 1, nsIMsgCopyServiceListener * 0x00000000, nsIMsgWindow * 0x06c02720) line 5120 + 44 bytes nsImapMailFolder::CopyMessages(nsImapMailFolder * const 0x074ef30c, nsIMsgFolder * 0x02ad511c, nsISupportsArray * 0x07ef8110, int 1, nsIMsgWindow * 0x06c02720, nsIMsgCopyServiceListener * 0x00000000, int 0) line 4887 + 41 bytes nsImapMailFolder::DeleteMessages(nsImapMailFolder * const 0x02ad511c, nsISupportsArray * 0x07ef8110, nsIMsgWindow * 0x06c02720, int 0, int 0, nsIMsgCopyServiceListener * 0x00000000) line 1864 + 66 bytes nsMsgDBView::DeleteMessages(nsIMsgWindow * 0x06c02720, unsigned int * 0x07ef9da0, int 1, int 0) line 1645 nsMsgDBView::ApplyCommandToIndices(int 7, unsigned int * 0x07ef9da0, int 1) line 1531 + 39 bytes nsMsgDBView::DoCommand(nsMsgDBView * const 0x07f099f0, int 7) line 1400 + 20 bytes XPTC_InvokeByIndex(nsISupports * 0x07f099f0, unsigned int 7, unsigned int 1, nsXPTCVariant * 0x0012b3d0) line 139 nsXPCWrappedNativeClass::CallWrappedMethod(JSContext * 0x04a02450, nsXPCWrappedNative * 0x07f093f0, const XPCNativeMemberDescriptor * 0x07f095cc, nsXPCWrappedNativeClass::CallMode CALL_METHOD, unsigned int 1, long * 0x07991030, long * 0x0012b5b8) line 934 + 42 bytes WrappedNative_CallMethod(JSContext * 0x04a02450, JSObject * 0x01013b38, unsigned int 1, long * 0x07991030, long * 0x0012b5b8) line 250 + 34 bytes js_Invoke(JSContext * 0x04a02450, unsigned int 1, unsigned int 0) line 786 + 23 bytes js_Interpret(JSContext * 0x04a02450, long * 0x0012c338) line 2679 + 15 bytes js_Invoke(JSContext * 0x04a02450, unsigned int 1, unsigned int 2) line 803 + 13 bytes nsXPCWrappedJSClass::CallMethod(nsXPCWrappedJSClass * const 0x07505930, nsXPCWrappedJS * 0x07506df0, unsigned short 5, const nsXPTMethodInfo * 0x00f29ac0, nsXPTCMiniVariant * 0x0012c7a0) line 874 + 21 bytes nsXPCWrappedJS::CallMethod(nsXPCWrappedJS * const 0x07506df0, unsigned short 5, const nsXPTMethodInfo * 0x00f29ac0, nsXPTCMiniVariant * 0x0012c7a0) line 432 PrepareAndDispatch(nsXPTCStubBase * 0x07506df0, unsigned int 5, unsigned int * 0x0012c850, unsigned int * 0x0012c840) line 100 + 31 bytes SharedStub() line 124 XPTC_InvokeByIndex(nsISupports * 0x07506df0, unsigned int 5, unsigned int 1, nsXPTCVariant * 0x0012c9f4) line 139 nsXPCWrappedNativeClass::CallWrappedMethod(JSContext * 0x04a02450, nsXPCWrappedNative * 0x075323b0, const XPCNativeMemberDescriptor * 0x07532434, nsXPCWrappedNativeClass::CallMode CALL_METHOD, unsigned int 1, long * 0x07990ff8, long * 0x0012cbdc) line 934 + 42 bytes WrappedNative_CallMethod(JSContext * 0x04a02450, JSObject * 0x01086838, unsigned int 1, long * 0x07990ff8, long * 0x0012cbdc) line 250 + 34 bytes js_Invoke(JSContext * 0x04a02450, unsigned int 1, unsigned int 0) line 786 + 23 bytes js_Interpret(JSContext * 0x04a02450, long * 0x0012d95c) line 2679 + 15 bytes js_Invoke(JSContext * 0x04a02450, unsigned int 1, unsigned int 2) line 803 + 13 bytes js_InternalInvoke(JSContext * 0x04a02450, JSObject * 0x010868f0, long 17329048, unsigned int 0, unsigned int 1, long * 0x0012daf4, long * 0x0012da84) line 875 + 20 bytes JS_CallFunctionValue(JSContext * 0x04a02450, JSObject * 0x010868f0, long 17329048, unsigned int 1, long * 0x0012daf4, long * 0x0012da84) line 3299 + 31 bytes nsJSContext::CallEventHandler(nsJSContext * const 0x04a02600, void * 0x010868f0, void * 0x01086b98, unsigned int 1, void * 0x0012daf4, int * 0x0012daf0, int 0) line 940 + 33 bytes nsJSEventListener::HandleEvent(nsIDOMEvent * 0x07f04034) line 154 + 64 bytes nsXBLPrototypeHandler::ExecuteHandler(nsXBLPrototypeHandler * const 0x075343d0, nsIDOMEventReceiver * 0x069b72d8, nsIDOMEvent * 0x07f04034) line 382 nsXBLWindowHandler::WalkHandlersInternal(nsIDOMEvent * 0x07f04034, nsIAtom * 0x02433540, nsIXBLPrototypeHandler * 0x07537a50) line 304 + 48 bytes nsXBLWindowKeyHandler::WalkHandlers(nsXBLWindowKeyHandler * const 0x064ce110, nsIDOMEvent * 0x07f04034, nsIAtom * 0x02433540) line 132 nsXBLWindowKeyHandler::KeyPress(nsIDOMEvent * 0x07f04034) line 148 nsEventListenerManager::HandleEvent(nsIPresContext * 0x060e5670, nsEvent * 0x0012f860, nsIDOMEvent * * 0x0012f628, nsIDOMEventTarget * 0x060e324c, unsigned int 2, nsEventStatus * 0x0012f7cc) line 1296 + 23 bytes nsXULDocument::HandleDOMEvent(nsXULDocument * const 0x060e3230, nsIPresContext * 0x060e5670, nsEvent * 0x0012f860, nsIDOMEvent * * 0x0012f628, unsigned int 2, nsEventStatus * 0x0012f7cc) line 1905 nsXULElement::HandleDOMEvent(nsXULElement * const 0x060fa890, nsIPresContext * 0x060e5670, nsEvent * 0x0012f860, nsIDOMEvent * * 0x0012f628, unsigned int 2, nsEventStatus * 0x0012f7cc) line 3670 + 39 bytes nsXULElement::HandleDOMEvent(nsXULElement * const 0x064c10d0, nsIPresContext * 0x060e5670, nsEvent * 0x0012f860, nsIDOMEvent * * 0x0012f628, unsigned int 2, nsEventStatus * 0x0012f7cc) line 3664 + 39 bytes nsXULElement::HandleDOMEvent(nsXULElement * const 0x064c4cf0, nsIPresContext * 0x060e5670, nsEvent * 0x0012f860, nsIDOMEvent * * 0x0012f628, unsigned int 2, nsEventStatus * 0x0012f7cc) line 3664 + 39 bytes nsXULElement::HandleDOMEvent(nsXULElement * const 0x060f3de0, nsIPresContext * 0x060e5670, nsEvent * 0x0012f860, nsIDOMEvent * * 0x0012f628, unsigned int 2, nsEventStatus * 0x0012f7cc) line 3664 + 39 bytes nsXULElement::HandleDOMEvent(nsXULElement * const 0x064d0fa0, nsIPresContext * 0x060e5670, nsEvent * 0x0012f860, nsIDOMEvent * * 0x0012f628, unsigned int 1, nsEventStatus * 0x0012f7cc) line 3664 + 39 bytes PresShell::HandleEventInternal(nsEvent * 0x0012f860, nsIView * 0x060e6df0, unsigned int 1, nsEventStatus * 0x0012f7cc) line 5111 + 47 bytes PresShell::HandleEvent(PresShell * const 0x060e66b4, nsIView * 0x060e6df0, nsGUIEvent * 0x0012f860, nsEventStatus * 0x0012f7cc, int 1, int & 1) line 5038 + 25 bytes nsView::HandleEvent(nsView * const 0x060e6df0, nsGUIEvent * 0x0012f860, unsigned int 28, nsEventStatus * 0x0012f7cc, int 1, int & 1) line 379 nsViewManager::DispatchEvent(nsViewManager * const 0x060e6f20, nsGUIEvent * 0x0012f860, nsEventStatus * 0x0012f7cc) line 1999 HandleEvent(nsGUIEvent * 0x0012f860) line 68 nsWindow::DispatchEvent(nsWindow * const 0x060e6cb4, nsGUIEvent * 0x0012f860, nsEventStatus & nsEventStatus_eIgnore) line 695 + 10 bytes nsWindow::DispatchWindowEvent(nsGUIEvent * 0x0012f860) line 716 nsWindow::DispatchKeyEvent(unsigned int 131, unsigned short 0, unsigned int 46) line 2330 + 15 bytes nsWindow::OnKeyDown(unsigned int 46, unsigned int 339) line 2371 nsWindow::ProcessMessage(unsigned int 256, unsigned int 46, long 22216705, long * 0x0012fc14) line 2948 + 32 bytes nsWindow::WindowProc(HWND__ * 0x09120610, unsigned int 256, unsigned int 46, long 22216705) line 950 + 27 bytes USER32! 77e7124c() JSDOM! 01530001()
Forgot to paste the console output: ###!!! ASSERTION: move/copy already in progress: '!m_copyState', file x:\mozilla \mailnews\imap\src\nsImapMailFolder.cpp, line 5120 ###!!! Break: at file x:\mozilla\mailnews\imap\src\nsImapMailFolder.cpp, line 51 Btw this is particularly annoying over slow modem connections. Shouldn't delete cancel the current download, delete the message and advance to the next message immediately?
david b. owns the dup of this bug. he may have already checked it in. I remember super reviewing it.
Assignee: mscott → bienvenu
Probably not checked in yet since my tree is in sync with today's trunk.
no, this is a different bug - I did check my fix in, but it had to do with the FE doing a biff and selecting the imap inbox, so if you had filters that fired, you'd get this double move/copy. this is a different problem - basically, kin's getting two deletes going into the trash at the same time.
Status: NEW → ASSIGNED
Priority: -- → P3
QA Contact: esther → stephend
Navin has a fix for this - use the copy service for delete. -> Navin
Assignee: bienvenu → naving
Status: ASSIGNED → NEW
*** This bug has been marked as a duplicate of 72322 ***
Status: NEW → RESOLVED
Closed: 24 years ago
Resolution: --- → DUPLICATE
I don't see this assertion anymore, so since bug 72332 has been marked FIXED, this must be a DUP, indeed. VERIFIED
Status: RESOLVED → VERIFIED
Product: MailNews → Core
Product: Core → MailNews Core
You need to log in before you can comment on or make changes to this bug.