Bug 57809

Summary: kmail segfaults when checking for new mail
Product: [Applications] kmail Reporter: Bud Rogers <b_rogers>
Component: generalAssignee: kdepim bugs <kdepim-bugs>
Severity: normal    
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Debian stable   
OS: Linux   
Latest Commit: Version Fixed In:

Description Bud Rogers 2003-04-28 16:50:56 UTC
Version:            (using KDE KDE 3.1.1a)
Installed from:    Debian stable Packages
Compiler:          gcc 2.95 
OS:          Linux

I just upgraded a Debian woody to KDE 3.1.1 from KDE 3.1.1.  Since upgrading, kmail consistently segfaults when I check for new mail.  It appears to successfully retrieve the mail OK.  I see the new counters increment in various folders before it crashes.  After restarting, the folders do not show new mail unless I enter the folder at which time the new counters immediately update and the new mail is present in the folders.  Any check for new mail crashes again, whether manual or interval.

I see the same behaviour with Ralf Nolden's debs from kde.org and with an executable I compiled with debugging enabled.  Backtrace follows.  Hope it helps.

[New Thread 1024 (LWP 8386)]
0x41301a59 in wait4 () from /lib/libc.so.6
#0  0x41301a59 in wait4 () from /lib/libc.so.6
#1  0x41378e48 in __check_rhosts_file () from /lib/libc.so.6
#2  0x411c4453 in waitpid () from /lib/libpthread.so.0
#3  0x409ca9da in KCrash::defaultCrashHandler () from /usr/lib/libkdecore.so.4
#4  0x411c1f54 in pthread_sighandler () from /lib/libpthread.so.0
#5  0x4128a6b8 in sigaction () from /lib/libc.so.6
#6  0x411c3ee2 in fcntl () from /lib/libpthread.so.0
#7  0x0819ce2a in KMFolderMbox::unlock (this=0xbfffece8)
    at ../../kmail/kmfoldermbox.cpp:446
#8  0x0819bbdf in KMFolderMbox::close (this=0xbfffece8, aForced=true)
    at ../../kmail/kmfoldermbox.cpp:276
#9  0x08132b23 in KMFolder::expunge (this=0xbfffece8)
    at ../../kmail/kmfolder.cpp:1127
#10 0x08163580 in KMAcctLocal::processNewMail (this=0x82eae48)
    at ../../kmail/kmacctlocal.cpp:222
#11 0x08160b73 in KMAcctMgr::processNextCheck (this=0x82e2460, _newMail=false)
    at ../../kmail/kmacctmgr.cpp:181
#12 0x081607cc in KMAcctMgr::singleCheckMail (this=0x82e2460, 
    account=0x82eae48, _interactive=true) at ../../kmail/kmacctmgr.cpp:134
#13 0x08160f52 in KMAcctMgr::checkMail (this=0x82e2460, _interactive=true)
    at ../../kmail/kmacctmgr.cpp:282
#14 0x0809bb68 in KMMainWin::slotCheckMail (this=0x8259c48)
    at ../../kmail/kmmainwin.cpp:863
#15 0x080962a1 in KMMainWin::qt_invoke (this=0x8259c48, _id=72, _o=0xbfffef88)
    at kmmainwin.moc:452
#16 0x40d08ab9 in QObject::activate_signal () from /usr/lib/libqt-mt.so.3
#17 0x40d089fe in QObject::activate_signal () from /usr/lib/libqt-mt.so.3
#18 0x407e0fc8 in KAction::activated () from /usr/lib/libkdeui.so.4
#19 0x407d6e72 in KAction::slotActivated () from /usr/lib/libkdeui.so.4
#20 0x407e11c2 in KAction::qt_invoke () from /usr/lib/libkdeui.so.4
#21 0x407e2f90 in KActionMenu::qt_invoke () from /usr/lib/libkdeui.so.4
#22 0x40d08b53 in QObject::activate_signal () from /usr/lib/libqt-mt.so.3
#23 0x40d089fe in QObject::activate_signal () from /usr/lib/libqt-mt.so.3
#24 0x40f62640 in QButton::clicked () from /usr/lib/libqt-mt.so.3
#25 0x40d74787 in QButton::mouseReleaseEvent () from /usr/lib/libqt-mt.so.3
#26 0x40d33566 in QWidget::event () from /usr/lib/libqt-mt.so.3
#27 0x40cb64da in QApplication::internalNotify () from /usr/lib/libqt-mt.so.3
#28 0x40cb5f8b in QApplication::notify () from /usr/lib/libqt-mt.so.3
#29 0x4096b3aa in KApplication::notify () from /usr/lib/libkdecore.so.4
#30 0x40c6b0d4 in QETWidget::translateMouseEvent () from /usr/lib/libqt-mt.so.3
#31 0x40c6941b in QApplication::x11ProcessEvent () from /usr/lib/libqt-mt.so.3
#32 0x40c7a83d in QEventLoop::processEvents () from /usr/lib/libqt-mt.so.3
#33 0x40cc7dae in QEventLoop::enterLoop () from /usr/lib/libqt-mt.so.3
#34 0x40cc7d0b in QEventLoop::exec () from /usr/lib/libqt-mt.so.3
#35 0x40cb6632 in QApplication::exec () from /usr/lib/libqt-mt.so.3
#36 0x081c1a60 in main (argc=1, argv=0xbffff9e4) at ../../kmail/main.cpp:353
Comment 1 Bud Rogers 2003-04-28 16:52:05 UTC
Err, I actually upgraded to 3.1.1 from 3.0... 
Comment 2 Bud Rogers 2003-04-30 20:06:15 UTC
This appears to be a file lock problem.  If I change locking method to none or one of 
the mutt dotlock methods, check mail works OK.  Fcntl locking segfaults.  Not sure 
what that means.  I would welcome any suggestions. 
Comment 3 Ingo Klöcker 2003-05-02 22:02:38 UTC
Subject: Re:  kmail segfaults when checking for new mail

Many thanks for this excellent bug report which included a useful 
backtrace (from a self-compiled binary with debug information) and a 
good problem analysis. Thanks to this information it took less time to 
fix the bug then it takes to write this message. ;-)

Comment 4 Bud Rogers 2003-05-03 15:20:52 UTC
Thanks for the prompt response and the kind words.  I have been using KDE since the first beta 
release.  It has been my desktop of choice since 1.0.  The KDE team have consistently justified my 
choice.  KDE is a class act.