Version: 1.12.4 (using KDE 4.3.4) OS: Linux Installed from: Debian testing/unstable Packages I have two different imap servers. One is gmail and the other one is a intranet server with cyrus2.2. My filter settings first check if the mail is from the imap account at gmail. If this is true then we stop processing there (just a check for >= 0 bytes and in advanced tab that we only do that for gmai-imap). The other filter just check for different criterias to sort them in the right folders - like spam assasin and clamav. Now I get a mail from gmail imap and kmail crashes with following backtrace: Program received signal SIGSEGV, Segmentation fault. #0 KMail::ActionScheduler::actionMessage (this=<value optimized out>, res=<value optimized out>) at ../../kmail/actionscheduler.cpp:675 action = <value optimized out> msg = <value optimized out> #1 0x0000003694207e09 in KMail::ActionScheduler::filterMessage (this=<value optimized out>) at ../../kmail/actionscheduler.cpp:648 No locals. #2 0x00000036942081c4 in KMail::ActionScheduler::qt_metacall (this=<value optimized out>, _c=<value optimized out>, _id=<value optimized out>, _a=<value optimized out>) at ./actionscheduler.moc:124 No locals. #3 0x00000039e1f66df2 in QMetaObject::activate (sender=<value optimized out>, from_signal_index=<value optimized out>, to_signal_index=<value optimized out>, argv=<value optimized out>) at kernel/qobject.cpp:3112 previousSender = <value optimized out> method = <value optimized out> currentSender = Could not find the frame base for "QMetaObject::activate(QObject*, int, int, void**)". Or the longer (non "bt-full): #0 KMail::ActionScheduler::actionMessage (this=<value optimized out>, res=<value optimized out>) at ../../kmail/actionscheduler.cpp:675 #1 0x0000003694207e09 in KMail::ActionScheduler::filterMessage (this=<value optimized out>) at ../../kmail/actionscheduler.cpp:648 #2 0x00000036942081c4 in KMail::ActionScheduler::qt_metacall (this=<value optimized out>, _c=<value optimized out>, _id=<value optimized out>, _a=<value optimized out>) at ./actionscheduler.moc:124 #3 0x00000039e1f66df2 in QMetaObject::activate (sender=<value optimized out>, from_signal_index=<value optimized out>, to_signal_index=<value optimized out>, argv=<value optimized out>) at kernel/qobject.cpp:3112 #4 0x00000039e1f61353 in QObject::event (this=<value optimized out>, e=<value optimized out>) at kernel/qobject.cpp:1074 #5 0x00000039e25d801d in QApplicationPrivate::notify_helper (this=<value optimized out>, receiver=<value optimized out>, e=<value optimized out>) at kernel/qapplication.cpp:4065 #6 0x00000039e25e007a in QApplication::notify (this=<value optimized out>, receiver=<value optimized out>, e=<value optimized out>) at kernel/qapplication.cpp:4030 #7 0x00000039e4a22de6 in KApplication::notify (this=<value optimized out>, receiver=<value optimized out>, event=<value optimized out>) at ../../kdeui/kernel/kapplication.cpp:302 #8 0x00000039e1f51c9c in QCoreApplication::notifyInternal (this=<value optimized out>, receiver=<value optimized out>, event=<value optimized out>) at kernel/qcoreapplication.cpp:610 #9 0x00000039e1f7e2c6 in QCoreApplication::sendEvent (this=<value optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:213 #10 QTimerInfoList::activateTimers (this=<value optimized out>) at kernel/qeventdispatcher_unix.cpp:580 #11 0x00000039e1f7a658 in timerSourceDispatch (source=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:184 #12 idleTimerSourceDispatch (source=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:231 #13 0x0000003ce243b90e in g_main_context_dispatch () from /lib/libglib-2.0.so.0 #14 0x0000003ce243f2c8 in ?? () from /lib/libglib-2.0.so.0 #15 0x0000003ce243f3f0 in g_main_context_iteration () from /lib/libglib-2.0.so.0 #16 0x00000039e1f7a39c in QEventDispatcherGlib::processEvents (this=<value optimized out>, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:407 #17 0x00000039e266ef1f in QGuiEventDispatcherGlib::processEvents (this=<value optimized out>, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:202 #18 0x00000039e1f50562 in QEventLoop::processEvents (this=<value optimized out>, flags=<value optimized out>) at kernel/qeventloop.cpp:149 #19 0x00000039e1f50934 in QEventLoop::exec (this=<value optimized out>, flags=<value optimized out>) at kernel/qeventloop.cpp:201 #20 0x00000039e1f52ba4 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:888 #21 0x0000000000402fa9 in main (argc=<value optimized out>, argv=<value optimized out>) at ../../kmail/main.cpp:146
Just build everything with debug and -O0. Program received signal SIGSEGV, Segmentation fault. 0x00007ffff784e8a0 in KMail::ActionScheduler::actionMessage (this=0x1868fa0, res=KMFilterAction::GoOn) at ../../kmail/actionscheduler.cpp:675 675 action->processAsync( msg ); Just received a message on gmail imap and that is the backtrace: #0 0x00007ffff784e8a0 in KMail::ActionScheduler::actionMessage (this=0x1868fa0, res=KMFilterAction::GoOn) at ../../kmail/actionscheduler.cpp:675 action = 0x41 msg = 0x69d6a0 #1 0x00007ffff784e6ad in KMail::ActionScheduler::filterMessage (this=0x1868fa0) at ../../kmail/actionscheduler.cpp:648 No locals. #2 0x00007ffff78505aa in KMail::ActionScheduler::qt_metacall (this=0x1868fa0, _c=QMetaObject::InvokeMetaMethod, _id=17, _a=0x7fffffffd3d0) at ./actionscheduler.moc:124 No locals. #3 0x00000039e1f66df2 in QMetaObject::activate (sender=<value optimized out>, from_signal_index=<value optimized out>, to_signal_index=<value optimized out>, argv=<value optimized out>) at kernel/qobject.cpp:3112 previousSender = <value optimized out> method = <value optimized out> currentSender = Could not find the frame base for "QMetaObject::activate(QObject*, int, int, void**)". Simple backtrace: #0 0x00007ffff784e8a0 in KMail::ActionScheduler::actionMessage (this=0x1868fa0, res=KMFilterAction::GoOn) at ../../kmail/actionscheduler.cpp:675 #1 0x00007ffff784e6ad in KMail::ActionScheduler::filterMessage (this=0x1868fa0) at ../../kmail/actionscheduler.cpp:648 #2 0x00007ffff78505aa in KMail::ActionScheduler::qt_metacall (this=0x1868fa0, _c=QMetaObject::InvokeMetaMethod, _id=17, _a=0x7fffffffd3d0) at ./actionscheduler.moc:124 #3 0x00000039e1f66df2 in QMetaObject::activate (sender=<value optimized out>, from_signal_index=<value optimized out>, to_signal_index=<value optimized out>, argv=<value optimized out>) at kernel/qobject.cpp:3112 #4 0x00000039e1f61353 in QObject::event (this=<value optimized out>, e=<value optimized out>) at kernel/qobject.cpp:1074 #5 0x00000039e25d801d in QApplicationPrivate::notify_helper (this=<value optimized out>, receiver=<value optimized out>, e=<value optimized out>) at kernel/qapplication.cpp:4065 #6 0x00000039e25e007a in QApplication::notify (this=<value optimized out>, receiver=<value optimized out>, e=<value optimized out>) at kernel/qapplication.cpp:4030 #7 0x00000039e4a22de6 in KApplication::notify (this=<value optimized out>, receiver=<value optimized out>, event=<value optimized out>) at ../../kdeui/kernel/kapplication.cpp:302 #8 0x00000039e1f51c9c in QCoreApplication::notifyInternal (this=<value optimized out>, receiver=<value optimized out>, event=<value optimized out>) at kernel/qcoreapplication.cpp:610 #9 0x00000039e1f7e2c6 in QCoreApplication::sendEvent (this=<value optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:213 #10 QTimerInfoList::activateTimers (this=<value optimized out>) at kernel/qeventdispatcher_unix.cpp:580 #11 0x00000039e1f7a658 in timerSourceDispatch (source=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:184 #12 idleTimerSourceDispatch (source=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:231 #13 0x0000003ce243b90e in g_main_context_dispatch () from /lib/libglib-2.0.so.0 #14 0x0000003ce243f2c8 in ?? () from /lib/libglib-2.0.so.0 #15 0x0000003ce243f3f0 in g_main_context_iteration () from /lib/libglib-2.0.so.0 #16 0x00000039e1f7a39c in QEventDispatcherGlib::processEvents (this=<value optimized out>, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:407 #17 0x00000039e266ef1f in QGuiEventDispatcherGlib::processEvents (this=<value optimized out>, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:202 #18 0x00000039e1f50562 in QEventLoop::processEvents (this=<value optimized out>, flags=<value optimized out>) at kernel/qeventloop.cpp:149 #19 0x00000039e1f50934 in QEventLoop::exec (this=<value optimized out>, flags=<value optimized out>) at kernel/qeventloop.cpp:201 #20 0x00000039e1f52ba4 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:888 #21 0x000000000040364b in main (argc=2, argv=0x7fffffffe078) at ../../kmail/main.cpp:146
It doesn't seem to happen when I receive a message in the cyrus2.2 imapd. My first configuration was pop3 on the intranet server and imap with the gmail server. But since the configuration of the intranet server was changed, I have to use imap on them. I had never such problems when the the intranet server was pop3 - but it confuses me that it crashes now when the filter runs on the gmail imap stuff (or better: should stop to process the filter list when it runs over the first filter rule). I can recreate the crash without any problems when I receive a message on gmail, but not with the intranet/cyrus2.2 imap
Ok, I changed my first rule from "doing nothing" to "Move into gmail/inbox" and now it doesn't crash anymore
*** This bug has been marked as a duplicate of bug 222004 ***