Bug 353653 - Kmail crash after add an account
Summary: Kmail crash after add an account
Status: RESOLVED FIXED
Alias: None
Product: Akonadi
Classification: Frameworks and Libraries
Component: IMAP resource (show other bugs)
Version: unspecified
Platform: Ubuntu Linux
: NOR crash
Target Milestone: ---
Assignee: Christian Mollekopf
URL:
Keywords: drkonqi
: 355759 360880 (view as bug list)
Depends on:
Blocks:
 
Reported: 2015-10-07 13:47 UTC by bugs.kde
Modified: 2017-01-07 13:52 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed In: 5.4.1


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description bugs.kde 2015-10-07 13:47:19 UTC
Application: akonadi_imap_resource (4.14)
KDE Platform Version: 4.14.6
Qt Version: 4.8.6
Operating System: Linux 3.19.0-30-generic x86_64
Distribution: Ubuntu 15.04

-- Information about the crash:
- What I was doing when the application crashed:
I was configuring my email account. 
When I apply changes of the new imap account (laposte), kamil just crash.

-- Backtrace:
Application: la ressource « laposte » de type Serveur de courriers électroniques IMAP (akonadi_imap_resource), signal: Segmentation fault
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[Current thread is 1 (Thread 0x7fd2821507c0 (LWP 17933))]

Thread 3 (Thread 0x7fd26e54f700 (LWP 17940)):
#0  0x00007ffeba1dad18 in clock_gettime ()
#1  0x00007fd27d99d38d in __GI___clock_gettime (clock_id=<optimized out>, tp=<optimized out>) at ../sysdeps/unix/clock_gettime.c:115
#2  0x00007fd28166bac5 in do_gettime (frac=<synthetic pointer>, sec=<synthetic pointer>) at tools/qelapsedtimer_unix.cpp:127
#3  qt_gettime () at tools/qelapsedtimer_unix.cpp:144
#4  0x00007fd28174f695 in updateCurrentTime (this=0x7fd2680030e0) at kernel/qeventdispatcher_unix.cpp:354
#5  QTimerInfoList::timerWait (this=0x7fd2680030e0, tm=...) at kernel/qeventdispatcher_unix.cpp:460
#6  0x00007fd28174df3c in timerSourcePrepareHelper (src=<optimized out>, timeout=0x7fd26e54ebf4) at kernel/qeventdispatcher_glib.cpp:143
#7  0x00007fd28174e005 in timerSourcePrepare (source=<optimized out>, timeout=<optimized out>) at kernel/qeventdispatcher_glib.cpp:176
#8  0x00007fd27c8d93fd in g_main_context_prepare () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#9  0x00007fd27c8d9de8 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#10 0x00007fd27c8d9fcc in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#11 0x00007fd28174e87e in QEventDispatcherGlib::processEvents (this=0x7fd2680008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:452
#12 0x00007fd28171dd21 in QEventLoop::processEvents (this=this@entry=0x7fd26e54edc0, flags=...) at kernel/qeventloop.cpp:149
#13 0x00007fd28171e085 in QEventLoop::exec (this=this@entry=0x7fd26e54edc0, flags=...) at kernel/qeventloop.cpp:204
#14 0x00007fd281611e89 in QThread::exec (this=this@entry=0x25d58d0) at thread/qthread.cpp:538
#15 0x00007fd2816fe493 in QInotifyFileSystemWatcherEngine::run (this=0x25d58d0) at io/qfilesystemwatcher_inotify.cpp:265
#16 0x00007fd2816146ff in QThreadPrivate::start (arg=0x25d58d0) at thread/qthread_unix.cpp:349
#17 0x00007fd27cfcf6aa in start_thread (arg=0x7fd26e54f700) at pthread_create.c:333
#18 0x00007fd27d98eeed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 2 (Thread 0x7fd2655af700 (LWP 19647)):
#0  0x00007fd27c91e798 in g_mutex_lock () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#1  0x00007fd27c8d9409 in g_main_context_prepare () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007fd27c8d9de8 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007fd27c8d9fcc in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007fd28174e87e in QEventDispatcherGlib::processEvents (this=0x7fd25c004b20, flags=...) at kernel/qeventdispatcher_glib.cpp:452
#5  0x00007fd28171dd21 in QEventLoop::processEvents (this=this@entry=0x7fd2655aee10, flags=...) at kernel/qeventloop.cpp:149
#6  0x00007fd28171e085 in QEventLoop::exec (this=this@entry=0x7fd2655aee10, flags=...) at kernel/qeventloop.cpp:204
#7  0x00007fd281611e89 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:538
#8  0x00007fd2816146ff in QThreadPrivate::start (arg=0x2488400) at thread/qthread_unix.cpp:349
#9  0x00007fd27cfcf6aa in start_thread (arg=0x7fd2655af700) at pthread_create.c:333
#10 0x00007fd27d98eeed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 1 (Thread 0x7fd2821507c0 (LWP 17933)):
[KCrash Handler]
#6  KIMAP::Session::state (this=0x0) at ../../kimap/session.cpp:108
#7  0x0000000000455cb9 in SessionPool::killSession (this=this@entry=0x25709d0, session=session@entry=0x0, termination=termination@entry=SessionPool::LogoutSession) at ../../../resources/imap/sessionpool.cpp:187
#8  0x00000000004569bd in SessionPool::cancelSessionCreation (this=this@entry=0x25709d0, session=0x0, errorCode=errorCode@entry=2, errorMessage=...) at ../../../resources/imap/sessionpool.cpp:245
#9  0x00000000004587f7 in SessionPool::onPasswordRequestDone (this=0x25709d0, resultType=<optimized out>, password=...) at ../../../resources/imap/sessionpool.cpp:307
#10 0x000000000046e11f in SessionPool::qt_static_metacall (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at moc_sessionpool.cpp:95
#11 0x00007fd2817341ec in QMetaObject::activate (sender=0x2571350, m=m@entry=0x48f680 <PasswordRequesterInterface::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffeba11ddc0) at kernel/qobject.cpp:3567
#12 0x000000000046dcc1 in PasswordRequesterInterface::done (this=<optimized out>, _t1=1, _t2=...) at moc_passwordrequesterinterface.cpp:117
#13 0x000000000041bbbd in SettingsPasswordRequester::onSettingsDialogFinished (this=<optimized out>, result=<optimized out>) at ../../../resources/imap/settingspasswordrequester.cpp:115
#14 0x00007fd2817341ec in QMetaObject::activate (sender=sender@entry=0x2793f20, m=m@entry=0x7fd28156a6e0 <QDialog::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffeba11df30) at kernel/qobject.cpp:3567
#15 0x00007fd280f39bbe in QDialog::finished (this=this@entry=0x2793f20, _t1=_t1@entry=1) at .moc/release-shared/moc_qdialog.cpp:152
#16 0x00007fd280f39c5b in QDialog::done (this=0x2793f20, r=1) at dialogs/qdialog.cpp:605
#17 0x00007fd27ea68775 in KDialog::slotButtonClicked (this=0x2793f20, button=4) at ../../kdeui/dialogs/kdialog.cpp:885
#18 0x00007fd27ea6a21f in KDialog::qt_static_metacall (_o=<optimized out>, _id=<optimized out>, _a=<optimized out>, _c=<optimized out>) at ./kdialog.moc:166
#19 0x00007fd2817341ec in QMetaObject::activate (sender=sender@entry=0x25973d0, m=m@entry=0x7fd281a824c0 <QSignalMapper::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffeba11e0f0) at kernel/qobject.cpp:3567
#20 0x00007fd28173be5e in QSignalMapper::mapped (this=this@entry=0x25973d0, _t1=4) at .moc/release-shared/moc_qsignalmapper.cpp:114
#21 0x00007fd28173bfe6 in QSignalMapper::map (this=0x25973d0, sender=0x25ad250) at kernel/qsignalmapper.cpp:266
#22 0x00007fd2817341ec in QMetaObject::activate (sender=sender@entry=0x25ad250, m=m@entry=0x7fd28157c8e0 <QAbstractButton::staticMetaObject>, local_signal_index=local_signal_index@entry=2, argv=argv@entry=0x7ffeba11e270) at kernel/qobject.cpp:3567
#23 0x00007fd2810f9332 in QAbstractButton::clicked (this=this@entry=0x25ad250, _t1=false) at .moc/release-shared/moc_qabstractbutton.cpp:219
#24 0x00007fd280e36573 in QAbstractButtonPrivate::emitClicked (this=this@entry=0x25e2eb0) at widgets/qabstractbutton.cpp:548
#25 0x00007fd280e37924 in QAbstractButtonPrivate::click (this=this@entry=0x25e2eb0) at widgets/qabstractbutton.cpp:541
#26 0x00007fd280e37a34 in QAbstractButton::mouseReleaseEvent (this=0x25ad250, e=0x7ffeba11e7d0) at widgets/qabstractbutton.cpp:1123
#27 0x00007fd280ab3dc8 in QWidget::event (this=0x25ad250, event=0x7ffeba11e7d0) at kernel/qwidget.cpp:8775
#28 0x00007fd280a609bc in QApplicationPrivate::notify_helper (this=this@entry=0x23d2c40, receiver=receiver@entry=0x25ad250, e=e@entry=0x7ffeba11e7d0) at kernel/qapplication.cpp:4570
#29 0x00007fd280a6763f in QApplication::notify (this=this@entry=0x7ffeba11efa0, receiver=receiver@entry=0x25ad250, e=e@entry=0x7ffeba11e7d0) at kernel/qapplication.cpp:4113
#30 0x00007fd27eb10b4a in KApplication::notify (this=0x7ffeba11efa0, receiver=0x25ad250, event=0x7ffeba11e7d0) at ../../kdeui/kernel/kapplication.cpp:311
#31 0x00007fd28171f1cd in QCoreApplication::notifyInternal (this=0x7ffeba11efa0, receiver=receiver@entry=0x25ad250, event=event@entry=0x7ffeba11e7d0) at kernel/qcoreapplication.cpp:955
#32 0x00007fd280a66c9f in sendEvent (event=<optimized out>, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:231
#33 QApplicationPrivate::sendMouseEvent (receiver=receiver@entry=0x25ad250, event=event@entry=0x7ffeba11e7d0, alienWidget=alienWidget@entry=0x25ad250, nativeWidget=nativeWidget@entry=0x2793f20, buttonDown=buttonDown@entry=0x7fd28158e578 <qt_button_down>, lastMouseReceiver=..., spontaneous=true) at kernel/qapplication.cpp:3178
#34 0x00007fd280ae09a2 in QETWidget::translateMouseEvent (this=this@entry=0x2793f20, event=event@entry=0x7ffeba11eb30) at kernel/qapplication_x11.cpp:4632
#35 0x00007fd280ae024c in QApplication::x11ProcessEvent (this=0x7ffeba11efa0, event=event@entry=0x7ffeba11eb30) at kernel/qapplication_x11.cpp:3626
#36 0x00007fd280b08ba2 in x11EventSourceDispatch (s=0x23d2880, callback=0x0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#37 0x00007fd27c8d9c3d in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#38 0x00007fd27c8d9f20 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#39 0x00007fd27c8d9fcc in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#40 0x00007fd28174e85e in QEventDispatcherGlib::processEvents (this=0x23905a0, flags=...) at kernel/qeventdispatcher_glib.cpp:450
#41 0x00007fd280b08c66 in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#42 0x00007fd28171dd21 in QEventLoop::processEvents (this=this@entry=0x7ffeba11ef10, flags=...) at kernel/qeventloop.cpp:149
#43 0x00007fd28171e085 in QEventLoop::exec (this=this@entry=0x7ffeba11ef10, flags=...) at kernel/qeventloop.cpp:204
#44 0x00007fd281723b09 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1227
#45 0x00007fd280a5ec1c in QApplication::exec () at kernel/qapplication.cpp:3828
#46 0x00007fd281c1bfec in Akonadi::ResourceBase::init (r=r@entry=0x2559fd0) at ../../akonadi/resourcebase.cpp:583
#47 0x000000000041890e in Akonadi::ResourceBase::init<ImapResource> (argc=<optimized out>, argv=<optimized out>) at /usr/include/akonadi/resourcebase.h:193
#48 0x00007fd27d8a8a40 in __libc_start_main (main=0x418240 <main(int, char**)>, argc=3, argv=0x7ffeba11f0b8, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffeba11f0a8) at libc-start.c:289
#49 0x00000000004187b4 in _start ()

Possible duplicates by query: bug 344791.

Reported using DrKonqi
Comment 1 Daniel Vrátil 2017-01-07 13:02:34 UTC
*** Bug 355759 has been marked as a duplicate of this bug. ***
Comment 2 Daniel Vrátil 2017-01-07 13:02:40 UTC
*** Bug 360880 has been marked as a duplicate of this bug. ***
Comment 3 Daniel Vrátil 2017-01-07 13:52:31 UTC
Git commit f32aaa9d574f85519c02d5d4c46dbd0853efebf8 by Daniel Vrátil.
Committed on 07/01/2017 at 13:06.
Pushed by dvratil into branch 'Applications/16.12'.

IMAP: Fix crash when session is destroyed during password request

This can happen when there's a certificate problem, then the
m_pendingInitialSession is set to null before the onPasswordRequestDone()
is called, which ends up in dereferencing a nullptr in killSession().
FIXED-IN: 5.4.1

M  +5    -2    resources/imap/sessionpool.cpp

https://commits.kde.org/kdepim-runtime/f32aaa9d574f85519c02d5d4c46dbd0853efebf8