| Summary: | Crash seemingly due to progress bars | ||
|---|---|---|---|
| Product: | [Unmaintained] kmail | Reporter: | Laurence Withers <l> |
| Component: | general | Assignee: | kdepim bugs <pim-bugs-null> |
| Status: | RESOLVED FIXED | ||
| Severity: | crash | CC: | michal |
| Priority: | NOR | ||
| Version First Reported In: | unspecified | ||
| Target Milestone: | --- | ||
| Platform: | Compiled Sources | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed/Implemented In: | ||
| Sentry Crash Report: | |||
*** Bug 133454 has been marked as a duplicate of this bug. *** SVN commit 585670 by kling:
Use a QGuardedPtr for the KPIM::ProgressItem in KMAccount.
Fixes a bazillion crashes when dereferencing deleted items.
BUG: 105701
BUG: 114953
BUG: 114197
BUG: 117475
BUG: 118083
BUG: 128131
BUG: 129007
BUG: 133023
BUG: 133745
M +1 -1 kmaccount.h
--- branches/KDE/3.5/kdepim/kmail/kmaccount.h #585669:585670
@@ -309,7 +309,7 @@
QValueList<KMMessage*> mReceipts;
QPtrList<FolderJob> mJobList;
bool mHasInbox : 1;
- ProgressItem *mMailCheckProgressItem;
+ QGuardedPtr<ProgressItem> mMailCheckProgressItem;
private:
/**
|
Version: (using KDE KDE 3.5.2) Installed from: Compiled From Sources Compiler: gcc 4.1.0 OS: Linux KMail crashes a few seconds after starting up. I have one (online) IMAP account, and it seems to connect to this and check what mail is in the folder; then it seems to crash, possibly during/after retrieval of the current email. I've attached a backtrace, hopefully this will help track the problem down. Using host libthread_db library "/lib/libthread_db.so.1". [Thread debugging using libthread_db enabled] [New Thread 47934232739456 (LWP 12616)] [New Thread 1107310928 (LWP 12620)] [New Thread 1098918224 (LWP 12619)] [New Thread 1090525520 (LWP 12618)] [New Thread 1082132816 (LWP 12617)] [KCrash handler] #5 0x00002b98895ab3d8 in QMap<KPIM::ProgressItem*, bool>::remove ( this=0xa4b7e8, k=@0x7fff22fac068) at qmap.h:441 #6 0x00002b98895aa5d7 in KPIM::ProgressItem::removeChild (this=0xa4b770, kiddo=0x9fb3b0) at progressmanager.cpp:74 #7 0x00002b98895aa63e in KPIM::ProgressItem::setComplete (this=0x9fb3b0) at progressmanager.cpp:60 #8 0x00002b9887f74274 in KMail::ImapAccountBase::removeJob (this=0x766910, it=@0x30) at imapaccountbase.cpp:1174 #9 0x00002b9887ec601c in KMail::ListJob::slotListResult (this=0x9fb4c0, job=0x91b230) at listjob.cpp:180 #10 0x00002b9887ec6e06 in KMail::ListJob::qt_invoke (this=0x9fb4c0, _id=2, _o=0x7fff22fac190) at listjob.moc:128 #11 0x00002b988c64c222 in QObject::activate_signal (this=0x91b230, clist=<value optimized out>, o=0x7fff22fac190) at kernel/qobject.cpp:2356 #12 0x00002b988adfb082 in KIO::Job::result (this=0x91b230, t0=0x91b230) at jobclasses.moc:162 #13 0x00002b988ae03223 in KIO::Job::emitResult (this=0x91b230) at job.cpp:226 #14 0x00002b988ae0490c in KIO::SimpleJob::slotFinished (this=0x91b230) at job.cpp:574 #15 0x00002b988ae0686f in KIO::ListJob::slotFinished (this=0x91b230) at job.cpp:2095 #16 0x00002b988ae0c9bd in KIO::ListJob::qt_invoke (this=0x91b230, _id=16, _o=0x7fff22fac580) at jobclasses.moc:1734 #17 0x00002b988c64c222 in QObject::activate_signal (this=0x9f3bd0, clist=<value optimized out>, o=0x7fff22fac580) at kernel/qobject.cpp:2356 #18 0x00002b988c64c6af in QObject::activate_signal (this=0x2b988ee97980, signal=<value optimized out>) at kernel/qobject.cpp:2325 #19 0x00002b988adee98a in KIO::SlaveInterface::dispatch (this=0x9f3bd0, _cmd=104, rawdata=@0x7fff22fac850) at slaveinterface.cpp:243 #20 0x00002b988adeda2c in KIO::SlaveInterface::dispatch (this=0x9f3bd0) at slaveinterface.cpp:173 #21 0x00002b988adea467 in KIO::Slave::gotInput (this=0x2b988ee97980) at slave.cpp:300 #22 0x00002b988adeaafa in KIO::Slave::qt_invoke (this=0x9f3bd0, _id=4, _o=0x7fff22fac980) at slave.moc:113 #23 0x00002b988c64c222 in QObject::activate_signal (this=0x954470, clist=<value optimized out>, o=0x7fff22fac980) at kernel/qobject.cpp:2356 #24 0x00002b988c64c5ea in QObject::activate_signal (this=0x954470, signal=<value optimized out>, param=<value optimized out>) at kernel/qobject.cpp:2449 #25 0x00002b988c665497 in QSocketNotifier::event (this=0x954470, e=0x7fff22facc70) at kernel/qsocketnotifier.cpp:258 #26 0x00002b988c5efb9b in QApplication::internalNotify ( this=<value optimized out>, receiver=0x954470, e=0x7fff22facc70) at kernel/qapplication.cpp:2635 #27 0x00002b988c5f0732 in QApplication::notify (this=0x7fff22faced0, receiver=0x954470, e=0x7fff22facc70) at kernel/qapplication.cpp:2358 #28 0x00002b988b94b318 in KApplication::notify (this=0x7fff22faced0, receiver=0x954470, event=0x7fff22facc70) at kapplication.cpp:550 #29 0x00002b988c5e5ee5 in QEventLoop::activateSocketNotifiers (this=0x5b55e0) at qapplication.h:496 #30 0x00002b988c59d8d0 in QEventLoop::processEvents (this=0x5b55e0, flags=<value optimized out>) at kernel/qeventloop_x11.cpp:383 #31 0x00002b988c605a43 in QEventLoop::enterLoop (this=0x2b988ee97980) at kernel/qeventloop.cpp:198 #32 0x00002b988c60592a in QEventLoop::exec (this=0x2b988ee97980) at kernel/qeventloop.cpp:145 #33 0x0000000000402cab in main (argc=<value optimized out>, argv=<value optimized out>) at main.cpp:110 Compiler is gcc-4.1.0, for x86_64 architecture. Let me know if there is anything I can do to get more info.