Bug 221221 - KMail does not start up properly when started with the KDE session
Summary: KMail does not start up properly when started with the KDE session
Status: RESOLVED WORKSFORME
Alias: None
Product: kmail
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Compiled Sources Linux
: NOR major
Target Milestone: ---
Assignee: kdepim bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-01-04 11:52 UTC by Alex Merry
Modified: 2013-01-14 23:38 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
Screenshot of the malformed window (17.80 KB, image/png)
2010-01-04 11:55 UTC, Alex Merry
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Alex Merry 2010-01-04 11:52:12 UTC
Version:           1.13.0 (SVN r1069428) (using Devel)
Compiler:          gcc version 4.4.2 20091208 (prerelease) (GCC) 
OS:                Linux
Installed from:    Compiled sources

This happens almost every time I log in to KDE when KMail was running at last logout.  However, sometimes KMail fails to run at all, and sometimes I will get an "Akonadi failed to start message", causing KMail to quit.

I logged in to a KDE desktop, having last logged out with KMail still running.  When start-up has finished, no KMail window is visible, and there is no KMail icon in the notification area (note: I've set KMail to only display in the notification area when I have unread email).

`pidof kmail`, however, shows that KMail is running, and it responds to D-Bus messages.

`kquitapp kmail` makes the KMail window appear briefly before KMail quits.

`qdbus org.kde.kmail /kmail/kmail_mainwindow_1 show` shows a window of the correct size, but almost entirely blank.  All the widgets appear to occupy the same space in the top left corner of the window.

My set-up for KMail is that I have several IMAP accounts (one running on localhost, and another four accounts spread across three servers), all with passwords saved in KWallet, and Akonadi is managing my address book (as a VCF file).

My best guess is that KMail gets stuck in an inner event loop during startup.  I'll try to get a backtrace next time this happens to see where.

One final thing: when I do `kquitapp kmail` when KMail is in this state, I get the following crash:

Application: KMail (kmail), signal: Segmentation fault
[KCrash Handler]
#5  0x000000000300b0a0 in ?? ()
#6  0x00007fccbf366772 in qDeleteAll<QList<KIO::Slave*>::const_iterator> (begin=..., end=...) at /home/kde-devel/qt/include/QtCore/../../../src/qt/src/corelib/tools/qalgorithms.h:322
#7  0x00007fccbf364e2f in qDeleteAll<QList<KIO::Slave*> > (c=...) at /home/kde-devel/qt/include/QtCore/../../../src/qt/src/corelib/tools/qalgorithms.h:330
#8  0x00007fccbf364921 in ~ProtocolInfo (this=0x3009250, __in_chrg=<value optimized out>) at /home/kde-devel/src/KDE/kdelibs/kio/kio/scheduler.cpp:168
#9  0x00007fccbf36661b in qDeleteAll<QHash<QString, KIO::SchedulerPrivate::ProtocolInfo*>::const_iterator> (begin=..., end=...)
    at /home/kde-devel/qt/include/QtCore/../../../src/qt/src/corelib/tools/qalgorithms.h:322
#10 0x00007fccbf364d60 in qDeleteAll<KIO::SchedulerPrivate::ProtocolInfoDict> (c=...) at /home/kde-devel/qt/include/QtCore/../../../src/qt/src/corelib/tools/qalgorithms.h:330
#11 0x00007fccbf3647b8 in ~SchedulerPrivate (this=0x210ec10, __in_chrg=<value optimized out>) at /home/kde-devel/src/KDE/kdelibs/kio/kio/scheduler.cpp:101
#12 0x00007fccbf35fbbc in destroy () at /home/kde-devel/src/KDE/kdelibs/kio/kio/scheduler.cpp:206
#13 0x00007fccbf292099 in ~KCleanUpGlobalStatic (this=0x7fccbf6dbbd8, __in_chrg=<value optimized out>) at /home/kde-devel/src/KDE/kdelibs/kdecore/kernel/kglobal.h:62
#14 0x00007fccbc684af2 in __run_exit_handlers () from /lib/libc.so.6
#15 0x00007fccbc684b45 in exit () from /lib/libc.so.6
#16 0x00007fccbc66eb74 in __libc_start_main () from /lib/libc.so.6
#17 0x00000000004026d9 in _start ()
Comment 1 Alex Merry 2010-01-04 11:55:21 UTC
Created attachment 39545 [details]
Screenshot of the malformed window

This is what the main window looks like when I force it to be shown using D-Bus
Comment 2 Alex Merry 2010-01-04 13:24:07 UTC
Backtrace from "stuck" KMail.  Apparently we never get a response from KWallet.  This may have something to do with the D-Bus issues I've been having (lots of things that talk over D-Bus have been timing out, making KRunner slow for instance), and it may related to bug 216857 (which is down to a bug in Qt 4.6 > 4.6.0).

#0  0x00007f0ab619c448 in poll () from /lib/libc.so.6
#1  0x00007f0aac90aa0c in g_main_context_iterate () from /usr/lib/libglib-2.0.so.0
#2  0x00007f0aac90ad50 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#3  0x00007f0ab8412389 in QEventDispatcherGlib::processEvents (this=0x1de5930, flags=...)
    at /home/kde-devel/src/qt/src/corelib/kernel/qeventdispatcher_glib.cpp:407
#4  0x00007f0ab6ec95d8 in QGuiEventDispatcherGlib::processEvents (this=0x1de5930, flags=...)
    at /home/kde-devel/src/qt/src/gui/kernel/qguieventdispatcher_glib.cpp:202
#5  0x00007f0ab83d9d80 in QEventLoop::processEvents (this=0x7fff558ad760, flags=...)
    at /home/kde-devel/src/qt/src/corelib/kernel/qeventloop.cpp:149
#6  0x00007f0ab83d9ed4 in QEventLoop::exec (this=0x7fff558ad760, flags=...)
    at /home/kde-devel/src/qt/src/corelib/kernel/qeventloop.cpp:197
#7  0x00007f0abc7f27d3 in KWallet::Wallet::openWallet (name=..., w=16777354,
    ot=KWallet::Wallet::Synchronous) at /home/kde-devel/src/KDE/kdelibs/kdeui/util/kwallet.cpp:260
#8  0x00007f0abb733148 in KMKernel::wallet (this=0x7fff558ae6b0)
    at /home/kde-devel/src/KDE/kdepim/kmail/kmkernel.cpp:2493
#9  0x00007f0abb6ab9a6 in KMail::NetworkAccount::readPassword (this=0x1e99460)
    at /home/kde-devel/src/KDE/kdepim/kmail/networkaccount.cpp:338
#10 0x00007f0abb640fe7 in KMail::AccountManager::readPasswords (this=0x1e83090)
    at /home/kde-devel/src/KDE/kdepim/kmail/accountmanager.cpp:438
#11 0x00007f0abb6a9814 in KMail::NetworkAccount::passwd (this=0x25cb550)
    at /home/kde-devel/src/KDE/kdepim/kmail/networkaccount.cpp:95
#12 0x00007f0abb6b0911 in KMail::ImapAccountBase::makeConnection (this=0x25cb550)
    at /home/kde-devel/src/KDE/kdepim/kmail/imapaccountbase.cpp:306
#13 0x00007f0abb6c2155 in KMAcctImap::makeConnection (this=0x25cb550)
    at /home/kde-devel/src/KDE/kdepim/kmail/kmacctimap.cpp:564
#14 0x00007f0abb6d86be in KMFolderImap::listDirectory (this=0x23e11d0)
    at /home/kde-devel/src/KDE/kdepim/kmail/kmfolderimap.cpp:736
#15 0x00007f0abb59e718 in KMail::FolderView::slotFolderExpanded (this=0x27f8e90, item=0x1f6c400)
    at /home/kde-devel/src/KDE/kdepim/kmail/folderview.cpp:2465
#16 0x00007f0abb5a0d50 in KMail::FolderView::qt_metacall (this=0x27f8e90,
    _c=QMetaObject::InvokeMetaMethod, _id=29, _a=0x7fff558aded0)
    at /home/kde-devel/build/KDE/kdepim/kmail/folderview.moc:234
#17 0x00007f0abb5a7aab in KMail::MainFolderView::qt_metacall (this=0x27f8e90,
    _c=QMetaObject::InvokeMetaMethod, _id=149, _a=0x7fff558aded0)
    at /home/kde-devel/build/KDE/kdepim/kmail/mainfolderview.moc:70
#18 0x00007f0ab83e37bd in QMetaObject::metacall (object=0x27f8e90, cl=QMetaObject::InvokeMetaMethod,
    idx=149, argv=0x7fff558aded0) at /home/kde-devel/src/qt/src/corelib/kernel/qmetaobject.cpp:237
#19 0x00007f0ab83f710d in QMetaObject::activate (sender=0x27f8e90, m=0x7f0ab7a61360, local_signal_index=6,
    argv=0x7fff558aded0) at /home/kde-devel/src/qt/src/corelib/kernel/qobject.cpp:3272
#20 0x00007f0ab74a561b in QTreeWidget::itemExpanded (this=0x27f8e90, _t1=0x1f6c400)
    at .moc/debug-shared/moc_qtreewidget.cpp:242
#21 0x00007f0ab74a1d9d in QTreeWidgetPrivate::_q_emitItemExpanded (this=0x29b7350, index=...)
    at /home/kde-devel/src/qt/src/gui/itemviews/qtreewidget.cpp:2268
#22 0x00007f0ab74a51a6 in QTreeWidget::qt_metacall (this=0x27f8e90, _c=QMetaObject::InvokeMetaMethod,
    _id=21, _a=0x7fff558ae190) at .moc/debug-shared/moc_qtreewidget.cpp:155
#23 0x00007f0abb08000f in KPIM::TreeWidget::qt_metacall (this=0x27f8e90, _c=QMetaObject::InvokeMetaMethod,
    _id=109, _a=0x7fff558ae190) at /home/kde-devel/build/KDE/kdepim/libkdepim/moc_treewidget.cpp:74
#24 0x00007f0abb108829 in KPIM::FolderTreeWidget::qt_metacall (this=0x27f8e90,
    _c=QMetaObject::InvokeMetaMethod, _id=109, _a=0x7fff558ae190)
    at /home/kde-devel/build/KDE/kdepim/libkdepim/foldertreewidget.moc:74
#25 0x00007f0abb5a0a2b in KMail::FolderView::qt_metacall (this=0x27f8e90,
    _c=QMetaObject::InvokeMetaMethod, _id=109, _a=0x7fff558ae190)
    at /home/kde-devel/build/KDE/kdepim/kmail/folderview.moc:200
#26 0x00007f0abb5a7aab in KMail::MainFolderView::qt_metacall (this=0x27f8e90,
    _c=QMetaObject::InvokeMetaMethod, _id=109, _a=0x7fff558ae190)
    at /home/kde-devel/build/KDE/kdepim/kmail/mainfolderview.moc:70
#27 0x00007f0ab83e37bd in QMetaObject::metacall (object=0x27f8e90, cl=QMetaObject::InvokeMetaMethod,
    idx=109, argv=0x7fff558ae190) at /home/kde-devel/src/qt/src/corelib/kernel/qmetaobject.cpp:237
#28 0x00007f0ab83f710d in QMetaObject::activate (sender=0x27f8e90, m=0x7f0ab7a5ffa0, local_signal_index=0,
    argv=0x7fff558ae190) at /home/kde-devel/src/qt/src/corelib/kernel/qobject.cpp:3272
#29 0x00007f0ab746a0ab in QTreeView::expanded (this=0x27f8e90, _t1=...)
    at .moc/debug-shared/moc_qtreeview.cpp:201
#30 0x00007f0ab745aff5 in QTreeView::expand (this=0x27f8e90, index=...)
    at /home/kde-devel/src/qt/src/gui/itemviews/qtreeview.cpp:744
#31 0x00007f0ab745b33e in QTreeView::setExpanded (this=0x27f8e90, index=..., expanded=true)
    at /home/kde-devel/src/qt/src/gui/itemviews/qtreeview.cpp:817
#32 0x00007f0ab74a3e08 in QTreeWidget::setItemExpanded (this=0x27f8e90, item=0x1f6c400, expand=true)
    at /home/kde-devel/src/qt/src/gui/itemviews/qtreewidget.cpp:3133
#33 0x00007f0abb5a16c9 in QTreeWidgetItem::setExpanded (this=0x1f6c400, aexpand=true)
    at /home/kde-devel/qt/include/QtGui/../../../src/qt/src/gui/itemviews/qtreewidget.h:409
#34 0x00007f0abb594ec8 in KMail::FolderView::restoreItemStates (this=0x27f8e90)
    at /home/kde-devel/src/KDE/kdepim/kmail/folderview.cpp:389
#35 0x00007f0abb595e14 in KMail::FolderView::reload (this=0x27f8e90, openFoldersForUpdate=false)
    at /home/kde-devel/src/KDE/kdepim/kmail/folderview.cpp:671
#36 0x00007f0abb7fc8f8 in KMMainWidget::readConfig (this=0x25cb040)
    at /home/kde-devel/src/KDE/kdepim/kmail/kmmainwidget.cpp:592
#37 0x00007f0abb7fa52b in KMMainWidget (this=0x25cb040, parent=0x1e99e70, aGUIClient=0x1e99ed0,
    actionCollection=0x22c3c10, config=...) at /home/kde-devel/src/KDE/kdepim/kmail/kmmainwidget.cpp:231
#38 0x00007f0abb51a0e0 in KMMainWin (this=0x1e99e70, __in_chrg=<value optimized out>,
    __vtt_parm=<value optimized out>) at /home/kde-devel/src/KDE/kdepim/kmail/kmmainwin.cpp:41
#39 0x00007f0abb72eea4 in KMKernel::doSessionManagement (this=0x7fff558ae6b0)
    at /home/kde-devel/src/KDE/kdepim/kmail/kmkernel.cpp:1688
#40 0x00000000004038f9 in main (argc=3, argv=0x7fff558ae9e8)
    at /home/kde-devel/src/KDE/kdepim/kmail/main.cpp:134
Comment 3 Alex Merry 2013-01-14 23:38:48 UTC
Doesn't seem to happen any more.