Status

P3
blocker
VERIFIED FIXED
19 years ago
11 years ago

People

(Reporter: fenella, Assigned: alecf)

Tracking

({smoketest})

Trunk
x86
Windows NT
smoketest

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment)

(Reporter)

Description

19 years ago
Win32 (2000-05-10-09 M16)
1. Launch Messenger using Task|Messenger
2. Click New Msg to open Compose window
3. Compose a message and click Send

Actual result: Application crashes.
However, message was sent.

Expected result: Should not crash

This happens in POP and IMAP. ( used both HTML and Plain editor

Have not tested Linux and Mac yet.

Comment 1

19 years ago
adding seth, putterman to the cc list
let me get a stack trace for this, could be the same as 38795

Comment 3

19 years ago
nsMsgComposeAndSend::DeleteListeners(nsMsgComposeAndSend * const 0x05cb64d0) 
line 3153 + 24 bytes
nsMsgComposeAndSend::Clear() line 357
nsMsgComposeAndSend::~nsMsgComposeAndSend() line 216
nsMsgComposeAndSend::`scalar deleting destructor'(unsigned int 1) + 15 bytes
nsMsgComposeAndSend::Release(nsMsgComposeAndSend * const 0x05cb64d0) line 157 + 
154 bytes
MailDeliveryCallback(nsIURI * 0x05cc2eb4, unsigned int 0, void * 0x05cb64d0) 
line 2594 + 12 bytes
nsMsgDeliveryListener::OnStopRunningUrl(nsMsgDeliveryListener * const 
0x05cc1c70, nsIURI * 0x05cc2eb4, unsigned int 0) line 82 + 21 bytes
nsUrlListenerManager::BroadcastChange(nsIURI * 0x05cc2eb4, nsUrlNotifyType 
nsUrlNotifyStopRunning, unsigned int 0) line 97
nsUrlListenerManager::OnStopRunningUrl(nsUrlListenerManager * const 0x05cc2e70, 
nsIMsgMailNewsUrl * 0x05cc2eb4, unsigned int 0) line 110 + 18 bytes
nsMsgMailNewsUrl::SetUrlState(nsMsgMailNewsUrl * const 0x05cc2eb4, int 0, 
unsigned int 0) line 94
nsSmtpProtocol::ProcessProtocolState(nsIURI * 0x05cc2eb4, nsIInputStream * 
0x05cc228c, unsigned int 317, unsigned int 36) line 1432
nsMsgProtocol::OnDataAvailable(nsMsgProtocol * const 0x05cc29d0, nsIChannel * 
0x05cc2714, nsISupports * 0x05cc2eb4, nsIInputStream * 0x05cc228c, unsigned int 
317, unsigned int 36) line 190 + 32 bytes
nsOnDataAvailableEvent::HandleEvent(nsOnDataAvailableEvent * const 0x05cc50e0) 
line 406 + 47 bytes
nsStreamListenerEvent::HandlePLEvent(PLEvent * 0x05cc5090) line 97 + 12 bytes
PL_HandleEvent(PLEvent * 0x05cc5090) line 575 + 10 bytes
PL_ProcessPendingEvents(PLEventQueue * 0x01213f10) line 520 + 9 bytes
_md_EventReceiverProc(HWND__ * 0x00010ccc, unsigned int 49419, unsigned int 0, 
long 18956048) line 1030 + 9 bytes
USER32! 77e71820()
(Reporter)

Updated

19 years ago
Severity: normal → blocker

Comment 4

19 years ago
It's because it's trying to release a null ptr.  NS_IF_RELEASE would stop the 
crash.  Reassigning to ducarroz who maybe knows why the listener would be null.
Assignee: mscott → ducarroz
not a dup of that other bug, but I think I have the fix.

here's the stack:

nsMsgComposeAndSend::DeleteListeners(nsMsgComposeAndSend * const 0x058fa190) 
line 3153 + 24 bytes
nsMsgComposeAndSend::Clear() line 357
nsMsgComposeAndSend::~nsMsgComposeAndSend() line 216
nsMsgComposeAndSend::`scalar deleting destructor'(unsigned int 1) + 15 bytes
nsMsgComposeAndSend::Release(nsMsgComposeAndSend * const 0x058fa190) line 157 + 
154 bytes
MailDeliveryCallback(nsIURI * 0x05906954, unsigned int 0, void * 0x058fa190) 
line 2594 + 12 bytes
nsMsgDeliveryListener::OnStopRunningUrl(nsMsgDeliveryListener * const 
0x05902fd0, nsIURI * 0x05906954, unsigned int 0) line 82 + 21 bytes
nsUrlListenerManager::BroadcastChange(nsIURI * 0x05906954, nsUrlNotifyType 
nsUrlNotifyStopRunning, unsigned int 0) line 97
nsUrlListenerManager::OnStopRunningUrl(nsUrlListenerManager * const 0x05906910, 
nsIMsgMailNewsUrl * 0x05906954, unsigned int 0) line 110 + 18 bytes
nsMsgMailNewsUrl::SetUrlState(nsMsgMailNewsUrl * const 0x05906954, int 0, 
unsigned int 0) line 94
nsSmtpProtocol::ProcessProtocolState(nsIURI * 0x05906954, nsIInputStream * 
0x05905a3c, unsigned int 345, unsigned int 36) line 1432
nsMsgProtocol::OnDataAvailable(nsMsgProtocol * const 0x059063f0, nsIChannel * 
0x059060f4, nsISupports * 0x05906954, nsIInputStream * 0x05905a3c, unsigned int 
345, unsigned int 36) line 190 + 32 bytes
nsOnDataAvailableEvent::HandleEvent(nsOnDataAvailableEvent * const 0x04e49150) 
line 406 + 47 bytes
nsStreamListenerEvent::HandlePLEvent(PLEvent * 0x04e492b0) line 97 + 12 bytes
PL_HandleEvent(PLEvent * 0x04e492b0) line 575 + 10 bytes
PL_ProcessPendingEvents(PLEventQueue * 0x011747f0) line 520 + 9 bytes
_md_EventReceiverProc(HWND__ * 0x00bc020a, unsigned int 49435, unsigned int 0, 
long 18302960) line 1030 + 9 bytes
USER32! 77e71820()
011747f0()
yeah, my fix is the same as puttermans.

adding alecf to the cc list.
strange, I haven't touch the send process for a while! Rich any idea?
(Assignee)

Comment 8

19 years ago
oh crap, this is my fault. I forgot to check in a file last night (I found the
crasher after I checked in)
attaching the patch and asking granrose for permission on IRC now.
Assignee: ducarroz → alecf
(Assignee)

Comment 9

19 years ago
Created attachment 8514 [details] [diff] [review]
fix for crash
(Assignee)

Comment 10

19 years ago
I had changed the way that listener arrays were passed around to be more XPCOM
compliant (so that par could do more whitebox testing) but I had forgotten that
the last element of every listener array was now null.
Status: NEW → ASSIGNED
the NS_IF_RELEASE() fix prevents the crash.  checking it in.

(maybe caused by alecf's recent changes?)
Status: ASSIGNED → RESOLVED
Last Resolved: 19 years ago
Resolution: --- → FIXED
(Assignee)

Comment 12

19 years ago
oh, heh, seth had the exact same patch (byte for byte)
thanks, this is the proper thing to do.
(Reporter)

Comment 13

19 years ago
Mac (2000-05-10-09 M16) does not have the problem.
(Reporter)

Updated

19 years ago
Keywords: smoketest

Comment 14

19 years ago
*** Bug 38824 has been marked as a duplicate of this bug. ***
(Reporter)

Comment 15

19 years ago
Win32 (2000-05-10-12 M16) re-spin
Linux (2000-05-10-12 M16) re-spin
This problem has been fixed.
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.