Closed Bug 182301 Opened 22 years ago Closed 22 years ago

IMAP mail crashes under OS X when selecting a message [@ strcmp]

Categories

(MailNews Core :: Networking: IMAP, defect)

PowerPC
macOS
defect
Not set
critical

Tracking

(Not tracked)

RESOLVED DUPLICATE of bug 169907

People

(Reporter: rpm, Assigned: Bienvenu)

Details

(Keywords: crash)

Crash Data

User-Agent:       Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en-US; rv:1.2) Gecko/20021126
Build Identifier: Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en-US; rv:1.2) Gecko/20021126

MailNews crashes when I select a new message using IMAP on OS X. The crash puts
MailNews in such a state that it cannot be opened again without crashing. This
bug was reported as #169907 for Moz v 1.2a, but the bug was closed, and when I
asked for it to be reopened I didn't get a response. I just verified that the
problem also exists with v1.2 on OS X, and would like to open a new bug for it.

Reproducible: Always

Steps to Reproduce:
1. Start Mozilla and MailNews
2. Select a message from Inbox
3. Watch Mozilla crash.

Actual Results:  
Mozilla crashes with the EXC_BAD_ADDRESS exception.

Expected Results:  
Display the relevant email message.


Here is a stacktrace from a recent crash:

Date/Time:  2002-11-27 12:44:53 -0800
OS Version: 10.2.2 (Build 6F21)
Host:       DHCP-26-212.wag.caltech.edu

Command:    Mozilla
PID:        16125

Exception:  EXC_BAD_ACCESS (0x0001)
Codes:      KERN_PROTECTION_FAILURE (0x0002) at 0x0000002d

Thread 0 Crashed:
 #0   0x0020fa04 in strcmp
 #1   0x001e1280 in PR_FindSymbol
 #2   0x002632b4 in nsDll::FindSymbol(char const *)
 #3   0x00263440 in nsDll::GetModule(nsISupports *, nsIModule **)
 #4   0x002b91c4 in nsNativeComponentLoader::GetFactoryFromModule(nsDll *, nsID
const &)
 #5   0x002b68a0 in GetFactory__23nsNativeComponentLoaderFRC4nsIDPCcPCcPP10nsIFact
 #6   0x0027179c in nsComponentManagerImpl::FindFactory(nsID const &, nsIFactory **)
 #7   0x00271de8 in nsComponentManagerImpl::CreateInstance(nsID const &,
nsISupports *)
 #8   0x00272394 in nsComponentManagerImpl::GetService(nsID const &, nsID const
&, void **)
 #9   0x002fc608 in GetService__16nsServiceManagerFRC4nsIDRC4nsIDPP11nsISupportsP1
 #10  0x017c3504 in nsJSCID::GetService(nsISupports **)
 #11  0x002a03bc in XPTC_InvokeByIndex
 #12  0x002a02b0 in XPTC_InvokeByIndex
 #13  0x017d298c in 0x17d298c
 #14  0x017d8dfc in XPC_WN_CallMethod(JSContext *, JSObject *, unsigned int,
long *, long *)
 #15  0x01751190 in js_Invoke
 #16  0x01759248 in 0x1759248
 #17  0x017511e8 in js_Invoke
 #18  0x017cc718 in 0x17cc718
 #19  0x017c8da4 in CallMethod__14nsXPCWrappedJSFUsPC15nsXPTMethodInfoP17nsXPTCMin
 #20  0x002a083c in PrepareAndDispatch
 #21  0x002a482c in nsProcessConstructor(nsISupports *, nsID const &, void **)
 #22  0x01a9bdd8 in HandleEventSubType__22nsEventListenerManagerFP16nsListenerStru
 #23  0x01a9c2e0 in 0x1a9c2e0
 #24  0x024bd630 in GlobalWindowImpl::HandleDOMEvent(nsIPresContext *, nsEvent
*,  *)
 #25  0x01cb1b4c in HandleDOMEvent__13nsXULDocumentFP14nsIPresContextP7nsEventPP11
 #26  0x01cf5298 in HandleDOMEvent__12nsXULElementFP14nsIPresContextP7nsEventPP11n
 #27  0x01cf5264 in HandleDOMEvent__12nsXULElementFP14nsIPresContextP7nsEventPP11
 #28  0x01cf5264 in HandleDOMEvent__12nsXULElementFP14nsIPresContextP7nsEventPP11
 #29  0x01cf5264 in HandleDOMEvent__12nsXULElementFP14nsIPresContextP7nsEventPP11
 #30  0x01cf5264 in HandleDOMEvent__12nsXULElementFP14nsIPresContextP7nsEventPP11
 #31  0x01cf5264 in HandleDOMEvent__12nsXULElementFP14nsIPresContextP7nsEventPP11
 #32  0x01aae560 in DispatchNewEvent__19nsEventStateManagerFP11nsISupportsP11nsIDO
 #33  0x01cefd1c in nsXULElement::DispatchEvent(nsIDOMEvent *, int *)
 #34  0x002a03bc in XPTC_InvokeByIndex
 #35  0x002a02b0 in XPTC_InvokeByIndex
 #36  0x017d298c in 0x17d298c
 #37  0x017d8dfc in XPC_WN_CallMethod(JSContext *, JSObject *, unsigned int,
long *, long *)
 #38  0x01751190 in js_Invoke
 #39  0x01759248 in 0x1759248
 #40  0x017511e8 in js_Invoke
 #41  0x01751430 in js_InternalInvoke
 #42  0x01731eac in JS_CallFunctionValue
 #43  0x024b840c in nsJSContext::CallEventHandler(void *, void *, unsigned int,
void *, int *, int)
 #44  0x024d84cc in nsJSEventListener::HandleEvent(nsIDOMEvent *)
 #45  0x01a9bdd8 in HandleEventSubType__22nsEventListenerManagerFP16nsListenerStru
 #46  0x01a9d9d4 in 0x1a9d9d4
 #47  0x024bd630 in GlobalWindowImpl::HandleDOMEvent(nsIPresContext *, nsEvent
*,  *)
 #48  0x01be8240 in DocumentViewerImpl::LoadComplete(unsigned int)
 #49  0x0247ab4c in nsDocShell::EndPageLoad(nsIWebProgress *, nsIChannel *,
unsigned int)
 #50  0x02491f14 in 0x2491f14
 #51  0x0247a390 in nsDocShell::OnStateChange(nsIWebProgress *, nsIRequest *,
unsigned int, unsigned int)
 #52  0x021259cc in FireOnStateChange__15nsDocLoaderImplFP14nsIWebProgressP10nsIRe
 #53  0x02124830 in nsDocLoaderImpl::doStopDocumentLoad(nsIRequest *, unsigned int)
 #54  0x021245c4 in nsDocLoaderImpl::DocLoaderIsEmpty(void)
 #55  0x021242d4 in nsDocLoaderImpl::OnStopRequest(nsIRequest *, nsISupports *,
unsigned int)
 #56  0x0183e0b0 in nsLoadGroup::RemoveRequest(nsIRequest *, nsISupports *,
unsigned int)
 #57  0x025bd470 in imgRequestProxy::OnStopRequest(nsIRequest *, nsISupports *,
unsigned int)
 #58  0x025bb868 in imgRequest::OnStopRequest(nsIRequest *, nsISupports *,
unsigned int)
 #59  0x025b7f84 in ProxyListener::OnStopRequest(nsIRequest *, nsISupports *,
unsigned int)
 #60  0x01878ae4 in nsJARChannel::OnStopRequest(nsIRequest *, nsISupports *,
unsigned int)
 #61  0x0189327c in nsOnStopRequestEvent::HandleEvent(void)
 #62  0x01892720 in nsARequestObserverEvent::HandlePLEvent(PLEvent *)
 #63  0x002d3de0 in PL_HandleEvent
 #64  0x002d3c4c in PL_ProcessPendingEvents
 #65  0x0027b7ec in nsEventQueueImpl::ProcessPendingEvents(void)
 #66  0x0206fe7c in nsMacNSPREventQueueHandler::ProcessPLEventQueue(void)
 #67  0x0206fd20 in nsMacNSPREventQueueHandler::RepeatAction(EventRecord const &)
 #68  0x0197db14 in Repeater::DoRepeaters(EventRecord const &)
 #69  0x02086728 in nsMacMessagePump::DispatchEvent(int, EventRecord *)
 #70  0x02086460 in nsMacMessagePump::DoMessagePump(void)
 #71  0x02085d6c in nsAppShell::Run(void)
 #72  0x01fa324c in nsAppShellService::Run(void)
 #73  0x001a42a0 in main1(int, char **, nsISupports *)
 #74  0x001a4cfc in main

Thread 1:
 #0   0x9000570c in syscall
 #1   0x90515d9c in BSD_waitevent
 #2   0x9051576c in CarbonSelectThreadFunc
 #3   0x90021308 in _pthread_body

Thread 2:
 #0   0x9003f068 in semaphore_wait_signal_trap
 #1   0x9003ee84 in _pthread_cond_wait
 #2   0x9051dda0 in CarbonOperationThreadFunc
 #3   0x90021308 in _pthread_body

Thread 3:
 #0   0x90042c48 in semaphore_timedwait_signal_trap
 #1   0x9003ee74 in _pthread_cond_wait
 #2   0x90233438 in TSWaitOnSemaphoreCommon
 #3   0x9023c258 in TimerThread
 #4   0x90021308 in _pthread_body

Thread 4:
 #0   0x9003f068 in semaphore_wait_signal_trap
 #1   0x9003ee84 in _pthread_cond_wait
 #2   0x9023341c in TSWaitOnSemaphoreCommon
 #3   0x90248aec in AsyncFileThread(void*)
 #4   0x90021308 in _pthread_body

Thread 5:
 #0   0x9003f068 in semaphore_wait_signal_trap
 #1   0x9003ee84 in _pthread_cond_wait
 #2   0x90525b90 in CarbonInetOperThreadFunc
 #3   0x90021308 in _pthread_body

PPC Thread State:
  srr0: 0x0020fa04 srr1: 0x0200f030                vrsave: 0x00000000
   xer: 0x00000000   lr: 0x001e10f0  ctr: 0x0020f9e0   mq: 0x00000000
    r0: 0x0000004e   r1: 0xbfffab50   r2: 0x003eb000   r3: 0x0032e732
    r4: 0x0000002c   r5: 0x00000000   r6: 0xbfffb2b8   r7: 0xbfff9e60
    r8: 0x00046010   r9: 0xa0220eac  r10: 0xa0220be4  r11: 0xa00042f8
   r12: 0x003ebb18  r13: 0x03c92460  r14: 0x05f30700  r15: 0x0000000b
   r16: 0x0193b990  r17: 0x00000000  r18: 0x00000001  r19: 0x00000001
   r20: 0xbfffb768  r21: 0xbfffb5c0  r22: 0x00000000  r23: 0x00000000
   r24: 0xbfffb5c0  r25: 0x016babe8  r26: 0xbfffb2b8  r27: 0x00000000
   r28: 0x003f17c0  r29: 0x0032e732  r30: 0x003f5d48  r31: 0x003e9ba0
what skin are you using? Can you read local or news messages? There's nothing
imap-related in that stack at all.
I'm using the modern skin. I can read local mail, POP, and news without problem.
It seems to only crash with IMAP. Actually, I can't read anything now, since
after it crashes I can't even bring up the MailNews component without Mozilla
crashing.
Either of you mac guys have a clue about this stack trace? It looks like some
sort of install/configuration issue if that stack trace is remotely accurate. Is
this a clean install? Do you have a stack trace from the subsequent crashes?
That's also very odd - perhaps the registry is somewhat corrupt?
I can confirm that the crash also happens using the Classic skin, for what it's
worth.
Here's a subsequent stack trace:

Date/Time:  2002-11-27 14:03:19 -0800
OS Version: 10.2.2 (Build 6F21)
Host:       Richard-Mullers-Computer.local.

Command:    Mozilla
PID:        16265

Exception:  EXC_BAD_ACCESS (0x0001)
Codes:      KERN_PROTECTION_FAILURE (0x0002) at 0x0000002e

Thread 0 Crashed:
 #0   0x0020fa04 in strcmp
 #1   0x001e1280 in PR_FindSymbol
 #2   0x002632b4 in nsDll::FindSymbol(char const *)
 #3   0x00263440 in nsDll::GetModule(nsISupports *, nsIModule **)
 #4   0x002b91c4 in nsNativeComponentLoader::GetFactoryFromModule(nsDll *, nsID
const &)
 #5   0x002b68a0 in GetFactory__23nsNativeComponentLoaderFRC4nsIDPCcPCcPP10nsIFact
 #6   0x00271958 in nsComponentManagerImpl::FindFactory(char const *, nsIFactory **)
 #7   0x00271f20 in CreateInstanceByContractID__22nsComponentManagerImplFPCcP11nsI
 #8   0x00278024 in nsCreateInstanceByContractID::_cl( const(nsID const &, void **))
 #9   0x002fc37c in nsCOMPtr_base::assign_from_helper(nsCOMPtr_helper const &,
nsID const &)
 #10  0x03bcbcf0 in 0x3bcbcf0
 #11  0x03bcd848 in AsyncConvertData__17nsStreamConverterFPCwPCwP17nsIStreamListen
 #12  0x0185ab38 in AsyncConvertData__24nsStreamConverterServiceFPCwPCwP17nsIStrea
 #13  0x02120094 in RetargetOutput__18nsDocumentOpenInfoFP10nsIRequestPCcPCcP17nsI
 #14  0x0211ee78 in 0x211ee78
 #15  0x0211e3e4 in OnStartRequest__18nsDocumentOpenInfoFP10nsIRequestP11nsISuppor
 #16  0x0188d304 in OnStartRequest__19nsStreamListenerTeeFP10nsIRequestP11nsISuppo
 #17  0x018227f0 in nsOnStartRequestEvent0::HandleEvent(void)
 #18  0x01821d54 in nsStreamListenerEvent0::HandlePLEvent(PLEvent *)
 #19  0x002d3de0 in PL_HandleEvent
 #20  0x002d3c4c in PL_ProcessPendingEvents
 #21  0x0027b7ec in nsEventQueueImpl::ProcessPendingEvents(void)
 #22  0x0206fe7c in nsMacNSPREventQueueHandler::ProcessPLEventQueue(void)
 #23  0x0206fd20 in nsMacNSPREventQueueHandler::RepeatAction(EventRecord const &)
 #24  0x0197db14 in Repeater::DoRepeaters(EventRecord const &)
 #25  0x02086728 in nsMacMessagePump::DispatchEvent(int, EventRecord *)
 #26  0x02086460 in nsMacMessagePump::DoMessagePump(void)
 #27  0x02085d6c in nsAppShell::Run(void)
 #28  0x01fa324c in nsAppShellService::Run(void)
 #29  0x001a42a0 in main1(int, char **, nsISupports *)
 #30  0x001a4cfc in main

Thread 1:
 #0   0x9000570c in syscall
 #1   0x90515d9c in BSD_waitevent
 #2   0x9051576c in CarbonSelectThreadFunc
 #3   0x90021308 in _pthread_body

Thread 2:
 #0   0x9003f068 in semaphore_wait_signal_trap
 #1   0x9003ee84 in _pthread_cond_wait
 #2   0x9051dda0 in CarbonOperationThreadFunc
 #3   0x90021308 in _pthread_body

Thread 3:
 #0   0x90042c48 in semaphore_timedwait_signal_trap
 #1   0x9003ee74 in _pthread_cond_wait
 #2   0x90233438 in TSWaitOnSemaphoreCommon
 #3   0x9023c258 in TimerThread
 #4   0x90021308 in _pthread_body

Thread 4:
 #0   0x9003f068 in semaphore_wait_signal_trap
 #1   0x9003ee84 in _pthread_cond_wait
 #2   0x9023341c in TSWaitOnSemaphoreCommon
 #3   0x90248aec in AsyncFileThread(void*)
 #4   0x90021308 in _pthread_body

Thread 5:
 #0   0x9003f068 in semaphore_wait_signal_trap
 #1   0x9003ee84 in _pthread_cond_wait
 #2   0x90525b90 in CarbonInetOperThreadFunc
 #3   0x90021308 in _pthread_body

PPC Thread State:
  srr0: 0x0020fa04 srr1: 0x0200f030                vrsave: 0x00000000
   xer: 0x00000000   lr: 0x001e10f0  ctr: 0x0020f9e0   mq: 0x00000000
    r0: 0x0000004e   r1: 0xbfffe540   r2: 0x003eb000   r3: 0x0032e732
    r4: 0x0000002d   r5: 0x00000000   r6: 0xbfffeca8   r7: 0xbfffd850
    r8: 0x00046010   r9: 0xa0220eac  r10: 0xa0220be4  r11: 0xa00042f8
   r12: 0x003ebb18  r13: 0x00000000  r14: 0xbffff344  r15: 0x00000000
   r16: 0xbfffedc4  r17: 0x003e3fc0  r18: 0x003e1cb0  r19: 0x03beb5bc
   r20: 0x03beb668  r21: 0x05ffa910  r22: 0xbfffedcc  r23: 0x05ff4770
   r24: 0x003e4f48  r25: 0x003fd808  r26: 0xbfffeca8  r27: 0x00000000
   r28: 0x003f17c0  r29: 0x0032e732  r30: 0x003f5d48  r31: 0x003e9ba0

This was not a clean install. I upgraded from 10.1.5. Mozilla worked fine on
that version, as I recall.
thanks, just grasping at straws here. Do you have a development environment so
that you could actually see where we are in the debugger?

Or, you could bring up the javasript debugger and see what's going on in js - it
looks like something is failing with js on the stack and getting a clue about
what js is running would help.

I'd try a clean install. If your registry is horked, then I think you need a
clean install to fix it. I'm not familiar with any of the mac-specific
installation issues, but it's worth a try.
It's crashing trying to load a component DLL, for some reason. I wonder if the
reporter has any extra XPIs installed?
> It's crashing trying to load a component DLL, for some 
> reason. I wonder if the reporter has any extra XPIs installed?

The reporter wouldn't know an XPI if it bit him in the leg. What's an XPI, and
how would I know if I've installed it. In general, I don't have a lot of special
stuff installed, mostly just fink and XDarwin and OroboSX.

> thanks, just grasping at straws here. Do you have a 
> development environment so that you could actually see 
> where we are in the debugger?

> Or, you could bring up the javasript debugger and 
> see what's going on in js - it
> looks like something is failing with js on the 
> stack and getting a clue about
> what js is running would help.

I can do either, except I'm not that familiar with either the dev environment or
the js debugger. I just brought up the js debugger and forced another crash.
When I started up moz and brought up the debugger again, there was some
additional information. How shall I communicate this to you?
that second stack trace has no js calls in it. If sfraser is right, then the
interesting thing to know is what dll are we trying to load here:

 #7   0x00271f20 in CreateInstanceByContractID__22nsComponentManagerImplFPCcP11nsI
 #8   0x00278024 in nsCreateInstanceByContractID::_cl( const(nsID const &, void **))
 #9   0x002fc37c in nsCOMPtr_base::assign_from_helper(nsCOMPtr_helper const &,
nsID const &)
 #10  0x03bcbcf0 in 0x3bcbcf0
 #11  0x03bcd848 in AsyncConvertData__17nsStreamConverterFPCwPCwP17nsIStreamListen

If you're not familiar with the mac dev env, this would be hard to figure out.
My guess would be we're trying to load a mime converter, from the stack.

Jean-Francois, any ideas?
Reporter: you could use the fs_usage tool to get info on what library is
loading. You'll need to enable the root user on your machine to do this (search
at macosxhints.com for info on how to do this).

Run Mozilla (but don't open up mail yet).
Open up a Terminal window.
Type 'top', and note the PID of the Mozilla process (number in the left column).
Hit 'q' to kill top.
Type 'sudo fs_usage -w <PID>' (replacing <PID> with the pid you noted above).
Now open MailNews in mozilla
When it crashes, switch back to Terminal and hit control-c to kill fs_usage.
Copy and paste the contents of the terminal window into a text file, and attach
to this bug.
This is truly bizzare. The program acts differently when I run the fs_usage
command. Without the command it crashes when I select the first message. When I
run the command it seems to work alright, and only crashes when I try and quit
from the program. I've attached the output of fs_usage anyway. I'm not sure it's
appropriate, since (1) the crash happens differently, and (2) I didn't even get
the whole crash; I've attached what I have.

             
I don't have a clue.
Stack resembles that of bug 169907. Dup?
Keywords: crash
Summary: IMAP mail crashes under OS X when selecting a message. → IMAP mail crashes under OS X when selecting a message [@ strcmp]
It is a duplicate of 169907. That bug had gotten closed, and I had tried to
reopen it, but I never got any more traffic on it. I didn't know quite what the
protocol was, and several versions of Moz had come out in the intervening time,
so I submitted a new bug with v1.2 and crossreferenced bug 169907 in my original
bug report. Sorry if this wasn't the right thing to do.
Resolving dup per comment 16.

*** This bug has been marked as a duplicate of 169907 ***
Status: UNCONFIRMED → RESOLVED
Closed: 22 years ago
Resolution: --- → DUPLICATE
QA Contact: huang → gchan
Product: MailNews → Core
Product: Core → MailNews Core
Crash Signature: [@ strcmp]
You need to log in before you can comment on or make changes to this bug.