Closed Bug 564206 Opened 14 years ago Closed 14 years ago

Crash after repeated fast "fetch mail" clicking [@ nsQueryInterface::operator()] - [@ nsImapIncomingServer::OnStopRunningUrl]

Categories

(MailNews Core :: Networking: IMAP, defect)

1.9.1 Branch
x86
Linux
defect
Not set
critical

Tracking

(Not tracked)

RESOLVED DUPLICATE of bug 550455

People

(Reporter: languitar, Unassigned)

References

Details

(Keywords: crash)

Crash Data

User-Agent:       Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.3) Gecko/20100423 Ubuntu/10.04 (lucid) Firefox/3.6.3
Build Identifier: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.9) Gecko/20100423 Thunderbird/3.0.4

Thunderbird crashes after repeatedly clicking the "fetch mail" button with high speed. This is completely reproducible.

Reproducible: Always

Steps to Reproduce:
1. Click "fetch mail" a few times in a row as fast as possible
Actual Results:  
Crash

Expected Results:  
Mails are fetched.

(gdb) thread apply all bt

Thread 15 (Thread 8361):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007fcc31a4986a in PR_WaitCondVar () from /usr/lib/libnspr4.so
#2  0x00007fcc31a498d6 in PR_Wait () from /usr/lib/libnspr4.so
#3  0x00007fcc320bcfc2 in nsAutoMonitor::Wait (this=0x7fcc14637310) at ../../dist/include/xpcom/nsAutoLock.h:340
#4  nsPipeInputStream::Wait (this=0x7fcc14637310) at nsPipe3.cpp:653
#5  0x00007fcc320bdab3 in nsPipeInputStream::ReadSegments (this=0x7fcc14637310, 
    writer=0x7fcc320bdf06 <NS_CopySegmentToBuffer(nsIInputStream*, void*, char const*, unsigned int, unsigned int, unsigned int*)>, closure=0x7fcc173e4000, count=4096, readCount=0x7fcc13cfd3b8) at nsPipe3.cpp:778
#6  0x0000000000d3eeb8 in nsMsgLineStreamBuffer::ReadNextLine (this=0x7fcc1529d940, aInputStream=0x7fcc14637310, 
    aNumBytesInLine=@0x7fcc13cfd418, aPauseForMoreData=@0x7fcc13cfd41c, prv=0x7fcc13cfd414, 
    addLineTerminator=<value optimized out>) at nsMsgLineBuffer.cpp:402
#7  0x0000000000cbf229 in nsImapProtocol::CreateNewLineFromSocket (this=0x7fcc173d5000) at nsImapProtocol.cpp:4618
#8  0x0000000000cc5890 in nsImapServerResponseParser::GetNextLineForParser (this=0x7fcc173d5258, nextLine=0x80)
    at nsImapServerResponseParser.cpp:127
#9  0x0000000000d7e78d in nsIMAPGenericParser::AdvanceToNextLine (this=0x7fcc173d5258)
    at nsIMAPGenericParser.cpp:182
#10 0x0000000000d7e8f1 in nsIMAPGenericParser::AdvanceToNextToken (this=0x7fcc173d5258)
    at nsIMAPGenericParser.cpp:153
#11 0x0000000000cc6975 in nsImapServerResponseParser::ParseIMAPServerResponse (this=0x7fcc173d5258, 
    aCurrentCommand=<value optimized out>, aIgnoreBadAndNOResponses=0, aGreetingWithCapability=0x0)
    at nsImapServerResponseParser.cpp:249
#12 0x0000000000cbd284 in nsImapProtocol::AuthLogin (this=0x7fcc173d5000, userName=0x7fcc13cfd940 "jwienke2", 
    password=..., flag=<value optimized out>) at nsImapProtocol.cpp:5581
#13 0x0000000000cbd72f in nsImapProtocol::TryToLogon (this=0x7fcc173d5000) at nsImapProtocol.cpp:8048
#14 0x0000000000cc12cf in nsImapProtocol::ProcessCurrentURL (this=0x7fcc173d5000) at nsImapProtocol.cpp:1702
#15 0x0000000000cbf7cc in nsImapProtocol::ImapThreadMainLoop (this=0x7fcc173d5000) at nsImapProtocol.cpp:1367
#16 0x0000000000cbf930 in nsImapProtocol::Run (this=0x7fcc173d5000) at nsImapProtocol.cpp:1063
#17 0x00007fcc320d0c4b in nsThread::ProcessNextEvent (this=0x7fcc1467ca60, mayWait=1, result=0x7fcc13cfdd1c)
    at nsThread.cpp:521
#18 0x00007fcc320a5f3c in NS_ProcessNextEvent_P (thread=0x7fcc1534528c, mayWait=128) at nsThreadUtils.cpp:247
#19 0x00007fcc320d126e in nsThread::ThreadFunc (arg=<value optimized out>) at nsThread.cpp:254
#20 0x00007fcc31a4f3fa in ?? () from /usr/lib/libnspr4.so
#21 0x00007fcc327e79ca in start_thread (arg=<value optimized out>) at pthread_create.c:300
#22 0x00007fcc2bb3669d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#23 0x0000000000000000 in ?? ()

Thread 14 (Thread 8347):
#0  0x00007fcc2bb29f53 in *__GI___poll (fds=<value optimized out>, nfds=<value optimized out>, timeout=100000)
    at ../sysdeps/unix/sysv/linux/poll.c:87
#1  0x00007fcc31a4b29f in ?? () from /usr/lib/libnspr4.so
#2  0x0000000000490a6f in nsSocketTransportService::Poll (this=<value optimized out>, wait=<value optimized out>, 
    interval=0x7fcc225feb8c) at nsSocketTransportService2.cpp:355
#3  0x0000000000490ee2 in nsSocketTransportService::DoPollIteration (this=0x7fcc22aad000, wait=1)
    at nsSocketTransportService2.cpp:660
#4  0x00000000004910e0 in nsSocketTransportService::OnProcessNextEvent (this=0x7fcc22aad000, 
    thread=0x7fcc27e49940, mayWait=<value optimized out>, depth=<value optimized out>)
    at nsSocketTransportService2.cpp:539
#5  0x00007fcc320d0bf3 in nsThread::ProcessNextEvent (this=0x7fcc27e49940, mayWait=1, result=0x7fcc225fec5c)
---Type <return> to continue, or q <return> to quit---
    at nsThread.cpp:508
#6  0x00007fcc320a5f3c in NS_ProcessNextEvent_P (thread=0x7fcc225fe8f0, mayWait=6) at nsThreadUtils.cpp:247
#7  0x0000000000490c56 in nsSocketTransportService::Run (this=0x7fcc22aad000) at nsSocketTransportService2.cpp:581
#8  0x00007fcc320d0c4b in nsThread::ProcessNextEvent (this=0x7fcc27e49940, mayWait=1, result=0x7fcc225fed1c)
    at nsThread.cpp:521
#9  0x00007fcc320a5f3c in NS_ProcessNextEvent_P (thread=0x7fcc225fe8f0, mayWait=6) at nsThreadUtils.cpp:247
#10 0x00007fcc320d126e in nsThread::ThreadFunc (arg=<value optimized out>) at nsThread.cpp:254
#11 0x00007fcc31a4f3fa in ?? () from /usr/lib/libnspr4.so
#12 0x00007fcc327e79ca in start_thread (arg=<value optimized out>) at pthread_create.c:300
#13 0x00007fcc2bb3669d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#14 0x0000000000000000 in ?? ()

Thread 13 (Thread 8358):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007fcc31a4986a in PR_WaitCondVar () from /usr/lib/libnspr4.so
#2  0x00007fcc31a498d6 in PR_Wait () from /usr/lib/libnspr4.so
#3  0x00007fcc320bcfc2 in nsAutoMonitor::Wait (this=0x7fcc17337f10) at ../../dist/include/xpcom/nsAutoLock.h:340
#4  nsPipeInputStream::Wait (this=0x7fcc17337f10) at nsPipe3.cpp:653
#5  0x00007fcc320bdab3 in nsPipeInputStream::ReadSegments (this=0x7fcc17337f10, 
    writer=0x7fcc320bdf06 <NS_CopySegmentToBuffer(nsIInputStream*, void*, char const*, unsigned int, unsigned int, unsigned int*)>, closure=0x7fcc1738e000, count=4096, readCount=0x7fcc162fc798) at nsPipe3.cpp:778
#6  0x0000000000d3eeb8 in nsMsgLineStreamBuffer::ReadNextLine (this=0x7fcc173135b0, aInputStream=0x7fcc17337f10, 
    aNumBytesInLine=@0x7fcc162fc7f8, aPauseForMoreData=@0x7fcc162fc7fc, prv=0x7fcc162fc7f4, 
    addLineTerminator=<value optimized out>) at nsMsgLineBuffer.cpp:402
#7  0x0000000000cbf229 in nsImapProtocol::CreateNewLineFromSocket (this=0x7fcc1737c800) at nsImapProtocol.cpp:4618
#8  0x0000000000cc5890 in nsImapServerResponseParser::GetNextLineForParser (this=0x7fcc1737ca58, nextLine=0x80)
    at nsImapServerResponseParser.cpp:127
#9  0x0000000000d7e78d in nsIMAPGenericParser::AdvanceToNextLine (this=0x7fcc1737ca58)
    at nsIMAPGenericParser.cpp:182
#10 0x0000000000d7e8f1 in nsIMAPGenericParser::AdvanceToNextToken (this=0x7fcc1737ca58)
    at nsIMAPGenericParser.cpp:153
#11 0x0000000000cc6975 in nsImapServerResponseParser::ParseIMAPServerResponse (this=0x7fcc1737ca58, 
    aCurrentCommand=<value optimized out>, aIgnoreBadAndNOResponses=0, aGreetingWithCapability=0x0)
    at nsImapServerResponseParser.cpp:249
#12 0x0000000000cbdbac in nsImapProtocol::OnStatusForFolder (this=0x7fcc1737c800, 
    mailboxName=0x7fcc27e04614 "kde") at nsImapProtocol.cpp:6367
#13 0x0000000000cc0c14 in nsImapProtocol::ProcessAuthenticatedStateURL (this=0x7fcc1737c800)
    at nsImapProtocol.cpp:7707
#14 0x0000000000cc1341 in nsImapProtocol::ProcessCurrentURL (this=0x7fcc1737c800) at nsImapProtocol.cpp:1721
#15 0x0000000000cbf7cc in nsImapProtocol::ImapThreadMainLoop (this=0x7fcc1737c800) at nsImapProtocol.cpp:1367
#16 0x0000000000cbf930 in nsImapProtocol::Run (this=0x7fcc1737c800) at nsImapProtocol.cpp:1063
#17 0x00007fcc320d0c4b in nsThread::ProcessNextEvent (this=0x7fcc199d5d30, mayWait=1, result=0x7fcc162fcd1c)
    at nsThread.cpp:521
#18 0x00007fcc320a5f3c in NS_ProcessNextEvent_P (thread=0x7fcc1738b38c, mayWait=128) at nsThreadUtils.cpp:247
#19 0x00007fcc320d126e in nsThread::ThreadFunc (arg=<value optimized out>) at nsThread.cpp:254
#20 0x00007fcc31a4f3fa in ?? () from /usr/lib/libnspr4.so
#21 0x00007fcc327e79ca in start_thread (arg=<value optimized out>) at pthread_create.c:300
#22 0x00007fcc2bb3669d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#23 0x0000000000000000 in ?? ()

---Type <return> to continue, or q <return> to quit---
Thread 12 (Thread 8359):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007fcc31a4986a in PR_WaitCondVar () from /usr/lib/libnspr4.so
#2  0x00007fcc31a498d6 in PR_Wait () from /usr/lib/libnspr4.so
#3  0x00007fcc320d00ac in nsAutoMonitor::Wait (this=0x7fcc15258ef0, mayWait=1, result=0x7fcc14ff97d0)
    at ../../dist/include/xpcom/nsAutoLock.h:340
#4  nsEventQueue::GetEvent (this=0x7fcc15258ef0, mayWait=1, result=0x7fcc14ff97d0) at nsEventQueue.cpp:85
#5  0x00007fcc320d0c26 in nsThread::nsChainedEventQueue::GetEvent (this=0x7fcc152a78b0, mayWait=1, 
    result=0x7fcc14ff983c) at nsThread.h:112
#6  nsThread::ProcessNextEvent (this=0x7fcc152a78b0, mayWait=1, result=0x7fcc14ff983c) at nsThread.cpp:512
#7  0x00007fcc320a5f3c in NS_ProcessNextEvent_P (thread=0x7fcc1532c7cc, mayWait=128) at nsThreadUtils.cpp:247
#8  0x00007fcc320d5101 in nsProxyEventObject::CallMethod (this=0x7fcc15260bc0, methodIndex=<value optimized out>, 
    methodInfo=<value optimized out>, params=<value optimized out>) at nsProxyEventObject.cpp:260
#9  0x00007fcc320dc5e5 in PrepareAndDispatch (self=0x7fcc15719080, methodIndex=<value optimized out>, 
    args=0x7fcc14ff9a30, gpregs=0x7fcc14ff99b0, fpregs=0x7fcc14ff99e0) at xptcstubs_x86_64_linux.cpp:151
#10 0x00007fcc320dbaa7 in SharedStub () from /usr/lib/thunderbird-3.0.4/libxpcom_core.so
#11 0x0000000000cc13dc in nsImapProtocol::ProcessCurrentURL (this=0x7fcc15285800) at nsImapProtocol.cpp:1741
#12 0x0000000000cbf7cc in nsImapProtocol::ImapThreadMainLoop (this=0x7fcc15285800) at nsImapProtocol.cpp:1367
#13 0x0000000000cbf930 in nsImapProtocol::Run (this=0x7fcc15285800) at nsImapProtocol.cpp:1063
#14 0x00007fcc320d0c4b in nsThread::ProcessNextEvent (this=0x7fcc152a78b0, mayWait=1, result=0x7fcc14ff9d1c)
    at nsThread.cpp:521
#15 0x00007fcc320a5f3c in NS_ProcessNextEvent_P (thread=0x7fcc1532c7cc, mayWait=128) at nsThreadUtils.cpp:247
#16 0x00007fcc320d126e in nsThread::ThreadFunc (arg=<value optimized out>) at nsThread.cpp:254
#17 0x00007fcc31a4f3fa in ?? () from /usr/lib/libnspr4.so
#18 0x00007fcc327e79ca in start_thread (arg=<value optimized out>) at pthread_create.c:300
#19 0x00007fcc2bb3669d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#20 0x0000000000000000 in ?? ()

Thread 11 (Thread 8357):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:211
#1  0x00007fcc31a48bd9 in ?? () from /usr/lib/libnspr4.so
#2  0x00007fcc31a497cc in PR_WaitCondVar () from /usr/lib/libnspr4.so
#3  0x0000000000498330 in nsHostResolver::GetHostToLookup (this=0x7fcc22a6c240, result=0x7fcc16afdd38)
    at nsHostResolver.cpp:773
#4  0x0000000000498c7c in nsHostResolver::ThreadFunc (arg=0x7fcc22a6c240) at nsHostResolver.cpp:877
#5  0x00007fcc31a4f3fa in ?? () from /usr/lib/libnspr4.so
#6  0x00007fcc327e79ca in start_thread (arg=<value optimized out>) at pthread_create.c:300
#7  0x00007fcc2bb3669d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#8  0x0000000000000000 in ?? ()

Thread 10 (Thread 8360):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007fcc31a4986a in PR_WaitCondVar () from /usr/lib/libnspr4.so
#2  0x00007fcc31a498d6 in PR_Wait () from /usr/lib/libnspr4.so
#3  0x00007fcc320bcfc2 in nsAutoMonitor::Wait (this=0x7fcc14635d10) at ../../dist/include/xpcom/nsAutoLock.h:340
#4  nsPipeInputStream::Wait (this=0x7fcc14635d10) at nsPipe3.cpp:653
#5  0x00007fcc320bdab3 in nsPipeInputStream::ReadSegments (this=0x7fcc14635d10, 
    writer=0x7fcc320bdf06 <NS_CopySegmentToBuffer(nsIInputStream*, void*, char const*, unsigned int, unsigned int, unsigned int*)>, closure=0x7fcc15706000, count=4096, readCount=0x7fcc144fe798) at nsPipe3.cpp:778
#6  0x0000000000d3eeb8 in nsMsgLineStreamBuffer::ReadNextLine (this=0x7fcc152582b0, aInputStream=0x7fcc14635d10, 
---Type <return> to continue, or q <return> to quit---
    aNumBytesInLine=@0x7fcc144fe7f8, aPauseForMoreData=@0x7fcc144fe7fc, prv=0x7fcc144fe7f4, 
    addLineTerminator=<value optimized out>) at nsMsgLineBuffer.cpp:402
#7  0x0000000000cbf229 in nsImapProtocol::CreateNewLineFromSocket (this=0x7fcc15287000) at nsImapProtocol.cpp:4618
#8  0x0000000000cc5890 in nsImapServerResponseParser::GetNextLineForParser (this=0x7fcc15287258, nextLine=0x80)
    at nsImapServerResponseParser.cpp:127
#9  0x0000000000d7e78d in nsIMAPGenericParser::AdvanceToNextLine (this=0x7fcc15287258)
    at nsIMAPGenericParser.cpp:182
#10 0x0000000000d7e8f1 in nsIMAPGenericParser::AdvanceToNextToken (this=0x7fcc15287258)
    at nsIMAPGenericParser.cpp:153
#11 0x0000000000cc6975 in nsImapServerResponseParser::ParseIMAPServerResponse (this=0x7fcc15287258, 
    aCurrentCommand=<value optimized out>, aIgnoreBadAndNOResponses=0, aGreetingWithCapability=0x0)
    at nsImapServerResponseParser.cpp:249
#12 0x0000000000cbdbac in nsImapProtocol::OnStatusForFolder (this=0x7fcc15287000, 
    mailboxName=0x7fcc153df3e8 "Trash") at nsImapProtocol.cpp:6367
#13 0x0000000000cc0c14 in nsImapProtocol::ProcessAuthenticatedStateURL (this=0x7fcc15287000)
    at nsImapProtocol.cpp:7707
#14 0x0000000000cc1341 in nsImapProtocol::ProcessCurrentURL (this=0x7fcc15287000) at nsImapProtocol.cpp:1721
#15 0x0000000000cbf7cc in nsImapProtocol::ImapThreadMainLoop (this=0x7fcc15287000) at nsImapProtocol.cpp:1367
#16 0x0000000000cbf930 in nsImapProtocol::Run (this=0x7fcc15287000) at nsImapProtocol.cpp:1063
#17 0x00007fcc320d0c4b in nsThread::ProcessNextEvent (this=0x7fcc1467c1f0, mayWait=1, result=0x7fcc144fed1c)
    at nsThread.cpp:521
#18 0x00007fcc320a5f3c in NS_ProcessNextEvent_P (thread=0x7fcc15260a4c, mayWait=128) at nsThreadUtils.cpp:247
#19 0x00007fcc320d126e in nsThread::ThreadFunc (arg=<value optimized out>) at nsThread.cpp:254
#20 0x00007fcc31a4f3fa in ?? () from /usr/lib/libnspr4.so
#21 0x00007fcc327e79ca in start_thread (arg=<value optimized out>) at pthread_create.c:300
#22 0x00007fcc2bb3669d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#23 0x0000000000000000 in ?? ()

Thread 9 (Thread 8354):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007fcc31a4986a in PR_WaitCondVar () from /usr/lib/libnspr4.so
#2  0x0000000000b82319 in nsCertVerificationThread::Run (this=0x7fcc199d50d0) at nsCertVerificationThread.cpp:138
#3  0x00007fcc31a4f3fa in ?? () from /usr/lib/libnspr4.so
#4  0x00007fcc327e79ca in start_thread (arg=<value optimized out>) at pthread_create.c:300
#5  0x00007fcc2bb3669d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#6  0x0000000000000000 in ?? ()

Thread 8 (Thread 8356):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007fcc31a4986a in PR_WaitCondVar () from /usr/lib/libnspr4.so
#2  0x00007fcc31a498d6 in PR_Wait () from /usr/lib/libnspr4.so
#3  0x00007fcc320bcfc2 in nsAutoMonitor::Wait (this=0x7fcc17337910) at ../../dist/include/xpcom/nsAutoLock.h:340
#4  nsPipeInputStream::Wait (this=0x7fcc17337910) at nsPipe3.cpp:653
#5  0x00007fcc320bdab3 in nsPipeInputStream::ReadSegments (this=0x7fcc17337910, 
    writer=0x7fcc320bdf06 <NS_CopySegmentToBuffer(nsIInputStream*, void*, char const*, unsigned int, unsigned int, unsigned int*)>, closure=0x7fcc17384000, count=4096, readCount=0x7fcc172fe478) at nsPipe3.cpp:778
#6  0x0000000000d3eeb8 in nsMsgLineStreamBuffer::ReadNextLine (this=0x7fcc17313520, aInputStream=0x7fcc17337910, 
    aNumBytesInLine=@0x7fcc172fe4d8, aPauseForMoreData=@0x7fcc172fe4dc, prv=0x7fcc172fe4d4, 
    addLineTerminator=<value optimized out>) at nsMsgLineBuffer.cpp:402
#7  0x0000000000cbf229 in nsImapProtocol::CreateNewLineFromSocket (this=0x7fcc17309000) at nsImapProtocol.cpp:4618
---Type <return> to continue, or q <return> to quit---
#8  0x0000000000cc5890 in nsImapServerResponseParser::GetNextLineForParser (this=0x7fcc17309258, nextLine=0x80)
    at nsImapServerResponseParser.cpp:127
#9  0x0000000000d7e78d in nsIMAPGenericParser::AdvanceToNextLine (this=0x7fcc17309258)
    at nsIMAPGenericParser.cpp:182
#10 0x0000000000d7e8f1 in nsIMAPGenericParser::AdvanceToNextToken (this=0x7fcc17309258)
    at nsIMAPGenericParser.cpp:153
#11 0x0000000000cc6975 in nsImapServerResponseParser::ParseIMAPServerResponse (this=0x7fcc17309258, 
    aCurrentCommand=<value optimized out>, aIgnoreBadAndNOResponses=1, aGreetingWithCapability=0x0)
    at nsImapServerResponseParser.cpp:249
#12 0x0000000000cb6c28 in nsImapProtocol::GetQuotaDataIfSupported (this=0x7fcc17309000, 
    aBoxName=<value optimized out>) at nsImapProtocol.cpp:8217
#13 0x0000000000cbc5d1 in nsImapProtocol::ProcessMailboxUpdate (this=0x7fcc17309000, handlePossibleUndo=1)
    at nsImapProtocol.cpp:3870
#14 0x0000000000cbe822 in nsImapProtocol::ProcessSelectedStateURL (this=0x7fcc17309000) at nsImapProtocol.cpp:2550
#15 0x0000000000cc134b in nsImapProtocol::ProcessCurrentURL (this=0x7fcc17309000) at nsImapProtocol.cpp:1723
#16 0x0000000000cbf7cc in nsImapProtocol::ImapThreadMainLoop (this=0x7fcc17309000) at nsImapProtocol.cpp:1367
#17 0x0000000000cbf930 in nsImapProtocol::Run (this=0x7fcc17309000) at nsImapProtocol.cpp:1063
#18 0x00007fcc320d0c4b in nsThread::ProcessNextEvent (this=0x7fcc199d5af0, mayWait=1, result=0x7fcc172fed1c)
    at nsThread.cpp:521
#19 0x00007fcc320a5f3c in NS_ProcessNextEvent_P (thread=0x7fcc17324ecc, mayWait=128) at nsThreadUtils.cpp:247
#20 0x00007fcc320d126e in nsThread::ThreadFunc (arg=<value optimized out>) at nsThread.cpp:254
#21 0x00007fcc31a4f3fa in ?? () from /usr/lib/libnspr4.so
#22 0x00007fcc327e79ca in start_thread (arg=<value optimized out>) at pthread_create.c:300
#23 0x00007fcc2bb3669d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#24 0x0000000000000000 in ?? ()

Thread 7 (Thread 8353):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007fcc31a4986a in PR_WaitCondVar () from /usr/lib/libnspr4.so
#2  0x0000000000b9441c in nsSSLThread::Run (this=0x7fcc19880440) at nsSSLThread.cpp:978
#3  0x00007fcc31a4f3fa in ?? () from /usr/lib/libnspr4.so
#4  0x00007fcc327e79ca in start_thread (arg=<value optimized out>) at pthread_create.c:300
#5  0x00007fcc2bb3669d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#6  0x0000000000000000 in ?? ()

Thread 6 (Thread 8355):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007fcc31a4986a in PR_WaitCondVar () from /usr/lib/libnspr4.so
#2  0x00007fcc31a498d6 in PR_Wait () from /usr/lib/libnspr4.so
#3  0x00007fcc320d00ac in nsAutoMonitor::Wait (this=0x7fcc199d51a0, mayWait=1, result=0x7fcc17c1ccb0)
    at ../../dist/include/xpcom/nsAutoLock.h:340
#4  nsEventQueue::GetEvent (this=0x7fcc199d51a0, mayWait=1, result=0x7fcc17c1ccb0) at nsEventQueue.cpp:85
#5  0x00007fcc320d0c26 in nsThread::nsChainedEventQueue::GetEvent (this=0x7fcc199d5160, mayWait=1, 
    result=0x7fcc17c1cd1c) at nsThread.h:112
#6  nsThread::ProcessNextEvent (this=0x7fcc199d5160, mayWait=1, result=0x7fcc17c1cd1c) at nsThread.cpp:512
#7  0x00007fcc320a5f3c in NS_ProcessNextEvent_P (thread=0x7fcc1988050c, mayWait=128) at nsThreadUtils.cpp:247
#8  0x00007fcc320d126e in nsThread::ThreadFunc (arg=<value optimized out>) at nsThread.cpp:254
#9  0x00007fcc31a4f3fa in ?? () from /usr/lib/libnspr4.so
#10 0x00007fcc327e79ca in start_thread (arg=<value optimized out>) at pthread_create.c:300
#11 0x00007fcc2bb3669d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
---Type <return> to continue, or q <return> to quit---
#12 0x0000000000000000 in ?? ()

Thread 5 (Thread 8352):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007fcc31a4986a in PR_WaitCondVar () from /usr/lib/libnspr4.so
#2  0x00007fcc31a498d6 in PR_Wait () from /usr/lib/libnspr4.so
#3  0x00007fcc320d00ac in nsAutoMonitor::Wait (this=0x7fcc1f567f20, mayWait=1, result=0x7fcc1f1facb0)
    at ../../dist/include/xpcom/nsAutoLock.h:340
#4  nsEventQueue::GetEvent (this=0x7fcc1f567f20, mayWait=1, result=0x7fcc1f1facb0) at nsEventQueue.cpp:85
#5  0x00007fcc320d0c26 in nsThread::nsChainedEventQueue::GetEvent (this=0x7fcc1f567ee0, mayWait=1, 
    result=0x7fcc1f1fad1c) at nsThread.h:112
#6  nsThread::ProcessNextEvent (this=0x7fcc1f567ee0, mayWait=1, result=0x7fcc1f1fad1c) at nsThread.cpp:512
#7  0x00007fcc320a5f3c in NS_ProcessNextEvent_P (thread=0x7fcc1f4c890c, mayWait=128) at nsThreadUtils.cpp:247
#8  0x00007fcc320d126e in nsThread::ThreadFunc (arg=<value optimized out>) at nsThread.cpp:254
#9  0x00007fcc31a4f3fa in ?? () from /usr/lib/libnspr4.so
#10 0x00007fcc327e79ca in start_thread (arg=<value optimized out>) at pthread_create.c:300
#11 0x00007fcc2bb3669d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#12 0x0000000000000000 in ?? ()

Thread 4 (Thread 8351):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:211
#1  0x00007fcc31a48bd9 in ?? () from /usr/lib/libnspr4.so
#2  0x00007fcc31a497cc in PR_WaitCondVar () from /usr/lib/libnspr4.so
#3  0x00007fcc31a498d6 in PR_Wait () from /usr/lib/libnspr4.so
#4  0x00007fcc320d23d6 in nsAutoMonitor::Wait (this=0x7fcc2051c940) at ../../dist/include/xpcom/nsAutoLock.h:340
#5  nsThreadPool::Run (this=0x7fcc2051c940) at nsThreadPool.cpp:210
#6  0x00007fcc320d0c4b in nsThread::ProcessNextEvent (this=0x7fcc2051f470, mayWait=1, result=0x7fcc202f8d1c)
    at nsThread.cpp:521
#7  0x00007fcc320a5f3c in NS_ProcessNextEvent_P (thread=0x7fcc2051ec8c, mayWait=393) at nsThreadUtils.cpp:247
#8  0x00007fcc320d126e in nsThread::ThreadFunc (arg=<value optimized out>) at nsThread.cpp:254
#9  0x00007fcc31a4f3fa in ?? () from /usr/lib/libnspr4.so
#10 0x00007fcc327e79ca in start_thread (arg=<value optimized out>) at pthread_create.c:300
#11 0x00007fcc2bb3669d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#12 0x0000000000000000 in ?? ()

Thread 3 (Thread 8349):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:211
#1  0x00007fcc31a48bd9 in ?? () from /usr/lib/libnspr4.so
#2  0x00007fcc31a497cc in PR_WaitCondVar () from /usr/lib/libnspr4.so
#3  0x00007fcc320d3af0 in TimerThread::Run (this=0x7fcc27e426e0) at TimerThread.cpp:345
#4  0x00007fcc320d0c4b in nsThread::ProcessNextEvent (this=0x7fcc2269a980, mayWait=1, result=0x7fcc20ffed1c)
    at nsThread.cpp:521
#5  0x00007fcc320a5f3c in NS_ProcessNextEvent_P (thread=0x7fcc22a179cc, mayWait=393) at nsThreadUtils.cpp:247
#6  0x00007fcc320d126e in nsThread::ThreadFunc (arg=<value optimized out>) at nsThread.cpp:254
#7  0x00007fcc31a4f3fa in ?? () from /usr/lib/libnspr4.so
#8  0x00007fcc327e79ca in start_thread (arg=<value optimized out>) at pthread_create.c:300
#9  0x00007fcc2bb3669d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#10 0x0000000000000000 in ?? ()

Thread 2 (Thread 8348):
---Type <return> to continue, or q <return> to quit---
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:211
#1  0x00007fcc31a48bd9 in ?? () from /usr/lib/libnspr4.so
#2  0x00007fcc31a497cc in PR_WaitCondVar () from /usr/lib/libnspr4.so
#3  0x000000000051b0b2 in XPCJSRuntime::WatchdogMain (arg=<value optimized out>) at xpcjsruntime.cpp:819
#4  0x00007fcc31a4f3fa in ?? () from /usr/lib/libnspr4.so
#5  0x00007fcc327e79ca in start_thread (arg=<value optimized out>) at pthread_create.c:300
#6  0x00007fcc2bb3669d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#7  0x0000000000000000 in ?? ()

Thread 1 (Thread 8346):
#0  0x00007fcc327f07bb in raise (sig=<value optimized out>) at ../nptl/sysdeps/unix/sysv/linux/pt-raise.c:42
#1  0x00000000004505c6 in nsProfileLock::FatalSignalHandler (signo=11) at nsProfileLock.cpp:212
#2  <signal handler called>
#3  nsQueryInterface::operator() (this=<value optimized out>, aIID=..., answer=0x7fff53d440b8) at nsCOMPtr.cpp:47
#4  0x00007fcc320a1c72 in nsCOMPtr_base::assign_from_qi (this=0x7fff53d44100, qi=..., iid=...) at nsCOMPtr.cpp:96
#5  0x0000000000c8f4ed in nsCOMPtr (this=0x7fcc22a81a00, url=<value optimized out>, 
    exitCode=<value optimized out>) at ../../../mozilla/dist/include/xpcom/nsCOMPtr.h:572
#6  nsImapIncomingServer::OnStopRunningUrl (this=0x7fcc22a81a00, url=<value optimized out>, 
    exitCode=<value optimized out>) at nsImapIncomingServer.cpp:2353
#7  0x0000000000d596c8 in nsMsgMailNewsUrl::SetUrlState (this=0x7fcc15288808, aRunningUrl=<value optimized out>, 
    aExitCode=0) at nsMsgMailNewsUrl.cpp:135
#8  0x0000000000c978c3 in nsImapMailFolder::SetUrlState (this=0x7fcc19922c00, aProtocol=0x7fcc15285800, 
    aUrl=0x7fcc15288808, isRunning=0, statusCode=0) at nsImapMailFolder.cpp:6609
#9  0x00007fcc320dba05 in NS_InvokeByIndex_P (that=0x80000008, methodIndex=17506960, paramCount=1406419128, 
    params=0x1) at xptcinvoke_x86_64_linux.cpp:208
#10 0x00007fcc320d4a17 in nsProxyObjectCallInfo::Run (this=0x7fcc146651c0) at nsProxyEvent.cpp:181
#11 0x00007fcc320d0c4b in nsThread::ProcessNextEvent (this=0x7fcc27e49670, mayWait=1, result=0x7fff53d443ac)
    at nsThread.cpp:521
#12 0x00007fcc320a5f3c in NS_ProcessNextEvent_P (thread=0x80000008, mayWait=17506960) at nsThreadUtils.cpp:247
#13 0x000000000060e133 in nsBaseAppShell::Run (this=0x7fcc22a9de80) at nsBaseAppShell.cpp:170
#14 0x0000000000b38640 in nsAppStartup::Run (this=0x7fcc226bae40) at nsAppStartup.cpp:193
#15 0x0000000000449c72 in XRE_main (argc=<value optimized out>, argv=<value optimized out>, 
    aAppData=<value optimized out>) at nsAppRunner.cpp:3321
#16 0x0000000000445690 in main (argc=1, argv=0x7fff53d44ba8) at nsMailApp.cpp:103

Crashing thread is Thread 1
Component: General → Networking: IMAP
Keywords: crash
Product: Thunderbird → MailNews Core
QA Contact: general → networking.imap
Summary: Crash after repeated fast "fetch mail" clicking [nsQueryInterface::operator()] → Crash after repeated fast "fetch mail" clicking [@ nsQueryInterface::operator()]
Version: unspecified → 1.9.1 Branch
I cannot reproduce this on Windows. Seems to be a linux issue.
Summary: Crash after repeated fast "fetch mail" clicking [@ nsQueryInterface::operator()] → Crash after repeated fast "fetch mail" clicking [@ nsQueryInterface::operator()] - [@ nsImapIncomingServer::OnStopRunningUrl]
With 3.0.4 I was able to reproduce the error. Now, after an update to 3.0.5 it seems not to be occuring any more. Can any one confirm this?
My case is worked out in Bug 570018
jbouwh in comment #3
> after an update to 3.0.5 it seems not to be occuring any more. Can any one confirm this? My case is worked out in Bug 570018

preliminary assessment - it might indeed be gone.  In a quick scan of a couple days of crashes I don't find any 3.0.5 crashes with nsImapIncomingServer::OnStopRunningUrl in the stack.  We probably want to wait a week or so to be sure, before closing the bug.
Hm, I can't reproduce this either with the new version. Nevertheless, wouldn't it be good to know what the reason was?
bug 550455 - Crash when m_foldersToStat.Count() == 0 - is the only imap crash confirmed to be fixed in 3.0.5. And https://bugzilla.redhat.com/show_bug.cgi?id=570655 which is tied that bug, cites nsQueryInterface::operator is on the stack.  so perhaps this will get duped to 550455
I'm on Ubuntu 10.04 64-bit. I could easily reproduce the problem with Thunderbird 3.0.4, I'm unable to do the same with 3.0.5 (both versions from Ubuntu repositories).

It seems it's fixed, indeed.
Status: UNCONFIRMED → RESOLVED
Closed: 14 years ago
Resolution: --- → DUPLICATE
Crash Signature: [@ nsQueryInterface::operator()] [@ nsImapIncomingServer::OnStopRunningUrl]
You need to log in before you can comment on or make changes to this bug.