Bug 297364 - kmail2 crash on local unsubscription of some folders
Summary: kmail2 crash on local unsubscription of some folders
Status: RESOLVED UNMAINTAINED
Alias: None
Product: kmail2
Classification: Applications
Component: general (show other bugs)
Version: 4.8.2
Platform: Compiled Sources Linux
: NOR crash
Target Milestone: ---
Assignee: kdepim bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-04-03 09:53 UTC by Marc Schiffbauer
Modified: 2017-01-07 22:31 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Marc Schiffbauer 2012-04-03 09:53:17 UTC
Application: kmail (4.8.2)
KDE Platform Version: 4.8.2 (4.8.2) (Compiled from sources)
Qt Version: 4.8.1
Operating System: Linux 3.3.0-gentoo x86_64
Distribution: "NAME=Gentoo"

-- Information about the crash:
- What I was doing when the application crashed:

I did:

* right click an imap folder and chose "local subscription"
* situation was: several IMAP folders with child-folders, parent was already locally unsubscribed while children were not
* also unchecked child-folders now
* click on "OK" button -> crash

-- Backtrace:
Application: KMail (kmail), signal: Aborted
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f716653c7a0 (LWP 5825))]

Thread 4 (Thread 0x7f71466df700 (LWP 5845)):
#0  0x00007f71615c0fdc in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f7157d50c4c in ?? () from /usr/lib64/qt4/libQtWebKit.so.4
#2  0x00007f7157d50d79 in ?? () from /usr/lib64/qt4/libQtWebKit.so.4
#3  0x00007f71615bce1c in start_thread () from /lib64/libpthread.so.0
#4  0x00007f71637e568d in clone () from /lib64/libc.so.6

Thread 3 (Thread 0x7f7145dde700 (LWP 5846)):
#0  0x00007f71637dc023 in poll () from /lib64/libc.so.6
#1  0x00007f715bc9a598 in ?? () from /usr/lib64/libglib-2.0.so.0
#2  0x00007f715bc9aa49 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#3  0x00007f716416ac46 in QEventDispatcherGlib::processEvents (this=0x12fbea0, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#4  0x00007f716413acb2 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#5  0x00007f716413af07 in QEventLoop::exec (this=0x7f7145dddde0, flags=...) at kernel/qeventloop.cpp:204
#6  0x00007f716403af47 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:501
#7  0x00007f716403df4b in QThreadPrivate::start (arg=0x12fba20) at thread/qthread_unix.cpp:298
#8  0x00007f71615bce1c in start_thread () from /lib64/libpthread.so.0
#9  0x00007f71637e568d in clone () from /lib64/libc.so.6

Thread 2 (Thread 0x7f70ff7db700 (LWP 9629)):
#0  0x00007f71615c135b in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f716403e3af in wait (time=30000, this=0x1374680) at thread/qwaitcondition_unix.cpp:84
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x1380ef8, time=30000) at thread/qwaitcondition_unix.cpp:158
#3  0x00007f716403184f in QThreadPoolThread::run (this=0x13a4b30) at concurrent/qthreadpool.cpp:141
#4  0x00007f716403df4b in QThreadPrivate::start (arg=0x13a4b30) at thread/qthread_unix.cpp:298
#5  0x00007f71615bce1c in start_thread () from /lib64/libpthread.so.0
#6  0x00007f71637e568d in clone () from /lib64/libc.so.6

Thread 1 (Thread 0x7f716653c7a0 (LWP 5825)):
[KCrash Handler]
#6  0x00007f71637363b5 in raise () from /lib64/libc.so.6
#7  0x00007f7163737cd3 in abort () from /lib64/libc.so.6
#8  0x00007f71640336e4 in qt_message_output (msgType=<optimized out>, buf=<optimized out>) at global/qglobal.cpp:2252
#9  0x00007f716403385f in qt_message(QtMsgType, const char *, typedef __va_list_tag __va_list_tag *) (msgType=QtFatalMsg, msg=0x7f716419f0e8 "ASSERT: \"%s\" in file %s, line %d", ap=0x7fffab66d4f8) at global/qglobal.cpp:2298
#10 0x00007f7164033a0c in qFatal (msg=<optimized out>) at global/qglobal.cpp:2481
#11 0x00007f7165edba9e in KSelectionProxyModelPrivate::selectionChanged (this=0x6dd73e0, _selected=..., _deselected=...) at /var/tmp/portage/kde-base/kdelibs-4.8.49.9999/work/kdelibs-4.8.49.9999/kdeui/itemviews/kselectionproxymodel.cpp:1891
#12 0x00007f716414faf9 in QMetaObject::activate (sender=0xc253f0, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fffab66d9a0) at kernel/qobject.cpp:3547
#13 0x00007f7164bc9217 in QItemSelectionModel::selectionChanged (this=<optimized out>, _t1=..., _t2=...) at .moc/release-shared/moc_qitemselectionmodel.cpp:166
#14 0x00007f7164bcefe4 in QItemSelectionModel::emitSelectionChanged (this=0xc253f0, newSelection=..., oldSelection=...) at itemviews/qitemselectionmodel.cpp:1544
#15 0x00007f7164bcff61 in QItemSelectionModel::select (this=0xc253f0, selection=..., command=...) at itemviews/qitemselectionmodel.cpp:1110
#16 0x00007f715f2670d2 in MessageList::Pane::Private::onSelectionChanged(QItemSelection const&, QItemSelection const&) () from /usr/lib64/libmessagelist.so.4
#17 0x00007f716414faf9 in QMetaObject::activate (sender=0xc18cd0, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fffab66dfc0) at kernel/qobject.cpp:3547
#18 0x00007f7164bc9217 in QItemSelectionModel::selectionChanged (this=<optimized out>, _t1=..., _t2=...) at .moc/release-shared/moc_qitemselectionmodel.cpp:166
#19 0x00007f7164bcdcde in QItemSelectionModelPrivate::_q_rowsAboutToBeRemoved (this=0x123a2c0, parent=..., start=0, end=0) at itemviews/qitemselectionmodel.cpp:680
#20 0x00007f7164bd12d9 in qt_static_metacall (_a=<optimized out>, _id=<optimized out>, _o=<optimized out>, _c=<optimized out>) at .moc/release-shared/moc_qitemselectionmodel.cpp:113
#21 QItemSelectionModel::qt_static_metacall (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at .moc/release-shared/moc_qitemselectionmodel.cpp:96
#22 0x00007f716414faf9 in QMetaObject::activate (sender=0x123a950, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fffab66e5d0) at kernel/qobject.cpp:3547
#23 0x00007f716419bcb4 in QAbstractItemModel::rowsAboutToBeRemoved (this=<optimized out>, _t1=..., _t2=0, _t3=0) at .moc/release-shared/moc_qabstractitemmodel.cpp:204
#24 0x00007f7164135da8 in QAbstractItemModel::beginRemoveRows (this=<optimized out>, parent=..., first=<optimized out>, last=<optimized out>) at kernel/qabstractitemmodel.cpp:2470
#25 0x00007f7164bf9fed in QSortFilterProxyModelPrivate::remove_proxy_interval (this=0x12389f0, source_to_proxy=..., proxy_to_source=..., proxy_start=0, proxy_end=<optimized out>, proxy_parent=..., orient=Qt::Vertical, emit_signal=true) at itemviews/qsortfilterproxymodel.cpp:557
#26 0x00007f7164bfea7a in QSortFilterProxyModelPrivate::remove_source_items (this=0x12389f0, source_to_proxy=..., proxy_to_source=..., source_items=..., source_parent=..., orient=Qt::Vertical, emit_signal=true) at itemviews/qsortfilterproxymodel.cpp:539
#27 0x00007f7164c00444 in QSortFilterProxyModelPrivate::source_items_about_to_be_removed (this=0x12389f0, source_parent=..., start=1, end=1, orient=Qt::Vertical) at itemviews/qsortfilterproxymodel.cpp:840
#28 0x00007f716414faf9 in QMetaObject::activate (sender=0x124a910, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fffab66e940) at kernel/qobject.cpp:3547
#29 0x00007f716419bcb4 in QAbstractItemModel::rowsAboutToBeRemoved (this=<optimized out>, _t1=..., _t2=1, _t3=1) at .moc/release-shared/moc_qabstractitemmodel.cpp:204
#30 0x00007f7164135da8 in QAbstractItemModel::beginRemoveRows (this=<optimized out>, parent=..., first=<optimized out>, last=<optimized out>) at kernel/qabstractitemmodel.cpp:2470
#31 0x00007f7164bf9fed in QSortFilterProxyModelPrivate::remove_proxy_interval (this=0x1229be0, source_to_proxy=..., proxy_to_source=..., proxy_start=1, proxy_end=<optimized out>, proxy_parent=..., orient=Qt::Vertical, emit_signal=true) at itemviews/qsortfilterproxymodel.cpp:557
#32 0x00007f7164bfea7a in QSortFilterProxyModelPrivate::remove_source_items (this=0x1229be0, source_to_proxy=..., proxy_to_source=..., source_items=..., source_parent=..., orient=Qt::Vertical, emit_signal=true) at itemviews/qsortfilterproxymodel.cpp:539
#33 0x00007f7164c00444 in QSortFilterProxyModelPrivate::source_items_about_to_be_removed (this=0x1229be0, source_parent=..., start=1, end=1, orient=Qt::Vertical) at itemviews/qsortfilterproxymodel.cpp:840
#34 0x00007f7164143911 in QMetaMethod::invoke (this=0x7fffab66f040, object=0x124a910, connectionType=Qt::DirectConnection, returnValue=..., val0=..., val1=..., val2=..., val3=..., val4=..., val5=..., val6=..., val7=..., val8=..., val9=...) at kernel/qmetaobject.cpp:1664
#35 0x00007f7164145ba2 in QMetaObject::invokeMethod (obj=0x124a910, member=<optimized out>, type=Qt::DirectConnection, ret=..., val0=..., val1=..., val2=..., val3=..., val4=..., val5=..., val6=..., val7=..., val8=..., val9=...) at kernel/qmetaobject.cpp:1179
#36 0x00007f7165e4f3d2 in QMetaObject::invokeMethod (obj=0x124a910, member=0x7f716605cf7f "_q_sourceRowsAboutToBeRemoved", type=Qt::DirectConnection, val0=..., val1=..., val2=..., val3=..., val4=..., val5=..., val6=..., val7=..., val8=..., val9=...) at /usr/include/qt4/QtCore/qobjectdefs.h:418
#37 0x00007f7165eb018e in KRecursiveFilterProxyModelPrivate::invokeRowsAboutToBeRemoved (this=<optimized out>, source_parent=..., start=1, end=1) at /var/tmp/portage/kde-base/kdelibs-4.8.49.9999/work/kdelibs-4.8.49.9999/kdeui/itemviews/krecursivefilterproxymodel.cpp:99
#38 0x00007f7165eaf373 in KRecursiveFilterProxyModelPrivate::sourceRowsAboutToBeRemoved (this=0xc76d10, source_parent=..., start=1, end=1) at /var/tmp/portage/kde-base/kdelibs-4.8.49.9999/work/kdelibs-4.8.49.9999/kdeui/itemviews/krecursivefilterproxymodel.cpp:220
#39 0x00007f716414faf9 in QMetaObject::activate (sender=0x122ac00, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fffab66f4e0) at kernel/qobject.cpp:3547
#40 0x00007f716419bcb4 in QAbstractItemModel::rowsAboutToBeRemoved (this=<optimized out>, _t1=..., _t2=1, _t3=1) at .moc/release-shared/moc_qabstractitemmodel.cpp:204
#41 0x00007f7164135da8 in QAbstractItemModel::beginRemoveRows (this=<optimized out>, parent=..., first=<optimized out>, last=<optimized out>) at kernel/qabstractitemmodel.cpp:2470
#42 0x00007f7165eac820 in KIdentityProxyModelPrivate::_k_sourceRowsAboutToBeRemoved (this=<optimized out>, parent=..., start=1, end=1) at /var/tmp/portage/kde-base/kdelibs-4.8.49.9999/work/kdelibs-4.8.49.9999/kdeui/itemviews/kidentityproxymodel.cpp:715
#43 0x00007f716414faf9 in QMetaObject::activate (sender=0x12355a0, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fffab66f720) at kernel/qobject.cpp:3547
#44 0x00007f716419bcb4 in QAbstractItemModel::rowsAboutToBeRemoved (this=<optimized out>, _t1=..., _t2=1, _t3=1) at .moc/release-shared/moc_qabstractitemmodel.cpp:204
#45 0x00007f7164135da8 in QAbstractItemModel::beginRemoveRows (this=<optimized out>, parent=..., first=<optimized out>, last=<optimized out>) at kernel/qabstractitemmodel.cpp:2470
#46 0x00007f7165eac820 in KIdentityProxyModelPrivate::_k_sourceRowsAboutToBeRemoved (this=<optimized out>, parent=..., start=1, end=1) at /var/tmp/portage/kde-base/kdelibs-4.8.49.9999/work/kdelibs-4.8.49.9999/kdeui/itemviews/kidentityproxymodel.cpp:715
#47 0x00007f716414faf9 in QMetaObject::activate (sender=0x106e410, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fffab66f950) at kernel/qobject.cpp:3547
#48 0x00007f716419bcb4 in QAbstractItemModel::rowsAboutToBeRemoved (this=<optimized out>, _t1=..., _t2=1, _t3=1) at .moc/release-shared/moc_qabstractitemmodel.cpp:204
#49 0x00007f7164135da8 in QAbstractItemModel::beginRemoveRows (this=<optimized out>, parent=..., first=<optimized out>, last=<optimized out>) at kernel/qabstractitemmodel.cpp:2470
#50 0x00007f7164bf9fed in QSortFilterProxyModelPrivate::remove_proxy_interval (this=0xee3ff0, source_to_proxy=..., proxy_to_source=..., proxy_start=1, proxy_end=<optimized out>, proxy_parent=..., orient=Qt::Vertical, emit_signal=true) at itemviews/qsortfilterproxymodel.cpp:557
#51 0x00007f7164bfea7a in QSortFilterProxyModelPrivate::remove_source_items (this=0xee3ff0, source_to_proxy=..., proxy_to_source=..., source_items=..., source_parent=..., orient=Qt::Vertical, emit_signal=true) at itemviews/qsortfilterproxymodel.cpp:539
#52 0x00007f7164c00444 in QSortFilterProxyModelPrivate::source_items_about_to_be_removed (this=0xee3ff0, source_parent=..., start=1, end=1, orient=Qt::Vertical) at itemviews/qsortfilterproxymodel.cpp:840
#53 0x00007f716414faf9 in QMetaObject::activate (sender=0x10b78d0, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fffab66fcc0) at kernel/qobject.cpp:3547
#54 0x00007f716419bcb4 in QAbstractItemModel::rowsAboutToBeRemoved (this=<optimized out>, _t1=..., _t2=1, _t3=1) at .moc/release-shared/moc_qabstractitemmodel.cpp:204
#55 0x00007f7164135da8 in QAbstractItemModel::beginRemoveRows (this=<optimized out>, parent=..., first=<optimized out>, last=<optimized out>) at kernel/qabstractitemmodel.cpp:2470
#56 0x00007f715fd7fee8 in Akonadi::EntityTreeModelPrivate::monitoredCollectionRemoved (this=0xee3830, collection=...) at /var/tmp/portage/kde-base/kdepimlibs-4.8.49.9999/work/kdepimlibs-4.8.49.9999/akonadi/entitytreemodel_p.cpp:805
#57 0x00007f715fd8019a in Akonadi::EntityTreeModelPrivate::monitoredCollectionUnsubscribed (this=0xee3830, col=...) at /var/tmp/portage/kde-base/kdepimlibs-4.8.49.9999/work/kdepimlibs-4.8.49.9999/akonadi/entitytreemodel_p.cpp:842
#58 0x00007f716414faf9 in QMetaObject::activate (sender=0xc62260, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fffab66ffc0) at kernel/qobject.cpp:3547
#59 0x00007f715fdb3705 in Akonadi::Monitor::collectionUnsubscribed (this=<optimized out>, _t1=...) at /var/tmp/portage/kde-base/kdepimlibs-4.8.49.9999/work/kdepimlibs-4.8.49.9999_build/akonadi/monitor.moc:273
#60 0x00007f715fdb5fe1 in Akonadi::MonitorPrivate::emitCollectionNotification (this=0xc8b750, msg=..., col=..., par=..., dest=...) at /var/tmp/portage/kde-base/kdepimlibs-4.8.49.9999/work/kdepimlibs-4.8.49.9999/akonadi/monitor_p.cpp:629
#61 0x00007f715fdb815a in Akonadi::MonitorPrivate::emitNotification (this=0xc8b750, msg=...) at /var/tmp/portage/kde-base/kdepimlibs-4.8.49.9999/work/kdepimlibs-4.8.49.9999/akonadi/monitor_p.cpp:285
#62 0x00007f715fd35711 in Akonadi::ChangeRecorderPrivate::emitNotification (this=0xc8b750, msg=...) at /var/tmp/portage/kde-base/kdepimlibs-4.8.49.9999/work/kdepimlibs-4.8.49.9999/akonadi/changerecorder_p.h:60
#63 0x00007f715fdb7b7d in Akonadi::MonitorPrivate::flushPipeline (this=0xc8b750) at /var/tmp/portage/kde-base/kdepimlibs-4.8.49.9999/work/kdepimlibs-4.8.49.9999/akonadi/monitor_p.cpp:429
#64 0x00007f715fdb7bd9 in Akonadi::MonitorPrivate::dataAvailable (this=0xc8b750) at /var/tmp/portage/kde-base/kdepimlibs-4.8.49.9999/work/kdepimlibs-4.8.49.9999/akonadi/monitor_p.cpp:438
#65 0x00007f716414faf9 in QMetaObject::activate (sender=0xe57600, m=<optimized out>, local_signal_index=<optimized out>, argv=0x0) at kernel/qobject.cpp:3547
#66 0x00007f715fd3a9eb in Akonadi::EntityCache<Akonadi::Collection, Akonadi::CollectionFetchJob, Akonadi::CollectionFetchScope>::processResult (this=0xe57600, job=0x1506cf0) at /var/tmp/portage/kde-base/kdepimlibs-4.8.49.9999/work/kdepimlibs-4.8.49.9999/akonadi/entitycache_p.h:192
#67 0x00007f716414faf9 in QMetaObject::activate (sender=0x1506cf0, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fffab670680) at kernel/qobject.cpp:3547
#68 0x00007f71658d6612 in KJob::result (this=<optimized out>, _t1=0x1506cf0) at /var/tmp/portage/kde-base/kdelibs-4.8.49.9999/work/kdelibs-4.8.49.9999_build/kdecore/kjob.moc:208
#69 0x00007f71658d6655 in KJob::emitResult (this=0x1506cf0) at /var/tmp/portage/kde-base/kdelibs-4.8.49.9999/work/kdelibs-4.8.49.9999/kdecore/jobs/kjob.cpp:318
#70 0x00007f7164154cc6 in QObject::event (this=0x1506cf0, e=<optimized out>) at kernel/qobject.cpp:1195
#71 0x00007f716466c7c4 in notify_helper (e=0x6727a70, receiver=0x1506cf0, this=0xe264d0) at kernel/qapplication.cpp:4554
#72 QApplicationPrivate::notify_helper (this=0xe264d0, receiver=0x1506cf0, e=0x6727a70) at kernel/qapplication.cpp:4526
#73 0x00007f7164671591 in QApplication::notify (this=0x7fffab671170, receiver=0x1506cf0, e=0x6727a70) at kernel/qapplication.cpp:3936
#74 0x00007f7165eed01d in KApplication::notify (this=0x7fffab671170, receiver=0x1506cf0, event=0x6727a70) at /var/tmp/portage/kde-base/kdelibs-4.8.49.9999/work/kdelibs-4.8.49.9999/kdeui/kernel/kapplication.cpp:311
#75 0x00007f716413beac in QCoreApplication::notifyInternal (this=0x7fffab671170, receiver=0x1506cf0, event=0x6727a70) at kernel/qcoreapplication.cpp:876
#76 0x00007f716413f6fa in sendEvent (event=0x6727a70, receiver=0x1506cf0) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:231
#77 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=<optimized out>, data=0xb931f0) at kernel/qcoreapplication.cpp:1500
#78 0x00007f716416a7c3 in sendPostedEvents () at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:236
#79 postEventSourceDispatch (s=0xe29c90) at kernel/qeventdispatcher_glib.cpp:279
#80 0x00007f715bc9a091 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#81 0x00007f715bc9a840 in ?? () from /usr/lib64/libglib-2.0.so.0
#82 0x00007f715bc9aa49 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#83 0x00007f716416abdf in QEventDispatcherGlib::processEvents (this=0xb94ad0, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#84 0x00007f716470f8ce in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#85 0x00007f716413acb2 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#86 0x00007f716413af07 in QEventLoop::exec (this=0x7fffab671060, flags=...) at kernel/qeventloop.cpp:204
#87 0x00007f716413fa15 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1148
#88 0x0000000000402861 in main (argc=3, argv=0x7fffab671308) at /var/tmp/portage/kde-base/kmail-4.8.49.9999/work/kmail-4.8.49.9999/kmail/main.cpp:145

Possible duplicates by query: bug 292145, bug 290660, bug 290226, bug 290057, bug 285185.

Reported using DrKonqi
Comment 1 Laurent Montel 2012-07-12 06:55:25 UTC
Still valid in 4.8.5 ? 4.9 master ?
Comment 2 Marc Schiffbauer 2012-07-12 07:49:29 UTC
Either its fixed or hard to reproduce. But while testing I noticed another bug with local subscriptions:

I managed it to have folders locally subscribed but not shown in the folderlist...

To reproduce:
(with every "subscribe" / "unsubscribe" i mean local subscriptions set via RMB menu->local subscriptions) 

1. Have a subfolder with some subfolders (here it is "lists" with one folder for every mailing list), all subscribed (default)
2. unsubscribe only "lists", not the subfolders: as expected, lists+subfolders disappear
3. subscribe "lists" again: ERROR: lists is shown again, but none of the subfolders (but they were checked in subscirbe dialog)


to "fix" this I have to manually uncheck (unsubscribe) all subfolders of "lists", hit "Apply", then check them again, "Apply"
Comment 3 Denis Kurz 2016-09-24 18:17:06 UTC
This bug has only been reported for versions before 4.14, which have been unsupported for at least two years now. Can anyone tell if this bug still present?

If noone confirms this bug for a Framework-based version of kmail2 (version 5.0 or later, as part of KDE Applications 15.12 or later), it gets closed in about three months.
Comment 4 Denis Kurz 2017-01-07 22:31:13 UTC
Just as announced in my last comment, I close this bug. If you encounter it again in a recent version (at least 5.0 aka 15.08), please open a new one unless it already exists. Thank you for all your input.