Bug 326511

Summary: False positive "someone else edited the file", crash on "take over changes"
Product: [Applications] kdepimlibs Reporter: Chris Kerr <chris.kerr>
Component: akonadiAssignee: kdepim bugs <kdepim-bugs>
Status: RESOLVED UNMAINTAINED    
Severity: crash Keywords: drkonqi
Priority: NOR    
Version: 4.11.2   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Chris Kerr 2013-10-23 14:58:17 UTC
Application: kontact (4.11.2)
KDE Platform Version: 4.11.2 (Compiled from sources)
Qt Version: 4.8.5
Operating System: Linux 3.11.4-gentoo x86_64
Distribution: "(none)"

-- Information about the crash:
- What I was doing when the application crashed:
I added a contact by right clicking on an address in KMail and choosing "Add Contact". Soon afterwards I clicked on the same address and chose "Edit Contact" and changed the name field to take into account the person's nickname. On clicking 'OK' to save the changes I was presented with a dialog (not sure of the exact wording) saying that someone else had edited the contact. I chose the button "take over changes" and kontact immediately crashed.

-- Backtrace:
Application: Kontact (kontact), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7fbfb98bd780 (LWP 23102))]

Thread 3 (Thread 0x7fbfafa5f700 (LWP 23104)):
#0  pthread_cond_wait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x0000003c5597d86e in WTF::TCMalloc_PageHeap::scavengerThread() () from /usr/lib64/qt4/libQtWebKit.so.4
#2  0x0000003c5597d8a9 in WTF::TCMalloc_PageHeap::runScavengerThread(void*) () from /usr/lib64/qt4/libQtWebKit.so.4
#3  0x0000003b3de092b3 in start_thread (arg=0x7fbfafa5f700) at pthread_create.c:309
#4  0x0000003b3daed5ad in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 2 (Thread 0x7fbfaf146700 (LWP 23106)):
#0  0x0000003b3dadec8d in read () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007fbfb89c4250 in g_wakeup_acknowledge () from /usr/lib64/libglib-2.0.so.0
#2  0x00007fbfb8983fac in g_main_context_check () from /usr/lib64/libglib-2.0.so.0
#3  0x00007fbfb898445b in g_main_context_iterate.isra.22 () from /usr/lib64/libglib-2.0.so.0
#4  0x00007fbfb89845ec in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#5  0x0000003c4afb88ce in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#6  0x0000003c4af88e2f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#7  0x0000003c4af8916d in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#8  0x0000003c4ae8049f in QThread::exec() () from /usr/lib64/qt4/libQtCore.so.4
#9  0x0000003c4ae82cdf in QThreadPrivate::start(void*) () from /usr/lib64/qt4/libQtCore.so.4
#10 0x0000003b3de092b3 in start_thread (arg=0x7fbfaf146700) at pthread_create.c:309
#11 0x0000003b3daed5ad in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 1 (Thread 0x7fbfb98bd780 (LWP 23102)):
[KCrash Handler]
#5  0x00007fbfb9dd000f in ContactEditorWidget::setReadOnly(bool) () from /usr/lib64/libakonadi-contact.so.4
#6  0x00007fbfb9d86b8f in Akonadi::ContactEditor::Private::parentCollectionFetchDone(KJob*) () from /usr/lib64/libakonadi-contact.so.4
#7  0x0000003c4af9eb58 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib64/qt4/libQtCore.so.4
#8  0x00007fbfbad24652 in KJob::result(KJob*) () from /usr/lib64/libkdecore.so.5
#9  0x00007fbfbad24690 in KJob::emitResult() () from /usr/lib64/libkdecore.so.5
#10 0x0000003c4afa30c6 in QObject::event(QEvent*) () from /usr/lib64/qt4/libQtCore.so.4
#11 0x0000003c4c3daf8c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/qt4/libQtGui.so.4
#12 0x0000003c4c3e1808 in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/qt4/libQtGui.so.4
#13 0x00007fbfbb321d4a in KApplication::notify(QObject*, QEvent*) () from /usr/lib64/libkdeui.so.5
#14 0x0000003c4af8a2cc in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib64/qt4/libQtCore.so.4
#15 0x0000003c4af8d528 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib64/qt4/libQtCore.so.4
#16 0x0000003c4afb9013 in postEventSourceDispatch(_GSource*, int (*)(void*), void*) () from /usr/lib64/qt4/libQtCore.so.4
#17 0x00007fbfb89841b7 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#18 0x00007fbfb8984528 in g_main_context_iterate.isra.22 () from /usr/lib64/libglib-2.0.so.0
#19 0x00007fbfb89845ec in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#20 0x0000003c4afb88a5 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#21 0x0000003c4c47d646 in QGuiEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtGui.so.4
#22 0x0000003c4af88e2f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#23 0x0000003c4af8916d in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#24 0x0000003c4c88394c in QDialog::exec() () from /usr/lib64/qt4/libQtGui.so.4
#25 0x00007fbf6733f4a3 in KMReaderWin::slotEditContact() () from /usr/lib64/libkmailprivate.so.4
#26 0x00007fbf6734108d in KMReaderWin::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) () from /usr/lib64/libkmailprivate.so.4
#27 0x0000003c4af9eb58 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib64/qt4/libQtCore.so.4
#28 0x0000003c4c3d47d2 in QAction::triggered(bool) () from /usr/lib64/qt4/libQtGui.so.4
#29 0x0000003c4c3d62e3 in QAction::activate(QAction::ActionEvent) () from /usr/lib64/qt4/libQtGui.so.4
#30 0x0000003c4c7ffdc9 in QMenuPrivate::activateCausedStack(QList<QPointer<QWidget> > const&, QAction*, QAction::ActionEvent, bool) () from /usr/lib64/qt4/libQtGui.so.4
#31 0x0000003c4c804581 in QMenuPrivate::activateAction(QAction*, QAction::ActionEvent, bool) () from /usr/lib64/qt4/libQtGui.so.4
#32 0x00007fbfbb3df465 in KMenu::mouseReleaseEvent(QMouseEvent*) () from /usr/lib64/libkdeui.so.5
#33 0x0000003c4c42dfd1 in QWidget::event(QEvent*) () from /usr/lib64/qt4/libQtGui.so.4
#34 0x0000003c4c80836b in QMenu::event(QEvent*) () from /usr/lib64/qt4/libQtGui.so.4
#35 0x0000003c4c3daf8c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/qt4/libQtGui.so.4
#36 0x0000003c4c3e1945 in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/qt4/libQtGui.so.4
#37 0x00007fbfbb321d4a in KApplication::notify(QObject*, QEvent*) () from /usr/lib64/libkdeui.so.5
#38 0x0000003c4af8a2cc in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib64/qt4/libQtCore.so.4
#39 0x0000003c4c3e1103 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) () from /usr/lib64/qt4/libQtGui.so.4
#40 0x0000003c4c4578a5 in QETWidget::translateMouseEvent(_XEvent const*) () from /usr/lib64/qt4/libQtGui.so.4
#41 0x0000003c4c455fd4 in QApplication::x11ProcessEvent(_XEvent*) () from /usr/lib64/qt4/libQtGui.so.4
#42 0x0000003c4c47d5aa in x11EventSourceDispatch(_GSource*, int (*)(void*), void*) () from /usr/lib64/qt4/libQtGui.so.4
#43 0x00007fbfb89841b7 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#44 0x00007fbfb8984528 in g_main_context_iterate.isra.22 () from /usr/lib64/libglib-2.0.so.0
#45 0x00007fbfb89845ec in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#46 0x0000003c4afb88a5 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#47 0x0000003c4c47d646 in QGuiEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtGui.so.4
#48 0x0000003c4af88e2f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#49 0x0000003c4af8916d in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#50 0x0000003c4c807127 in QMenu::exec(QPoint const&, QAction*) () from /usr/lib64/qt4/libQtGui.so.4
#51 0x00007fbf673940da in KMMainWidget::showMessagePopup(Akonadi::Item const&, KUrl const&, KUrl const&, QPoint const&, bool, bool) () from /usr/lib64/libkmailprivate.so.4
#52 0x00007fbf67394e95 in KMMainWidget::slotContactSearchJobForMessagePopupDone(KJob*) () from /usr/lib64/libkmailprivate.so.4
#53 0x00007fbf673a5581 in KMMainWidget::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) () from /usr/lib64/libkmailprivate.so.4
#54 0x0000003c4af9eb58 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib64/qt4/libQtCore.so.4
#55 0x00007fbfbad24652 in KJob::result(KJob*) () from /usr/lib64/libkdecore.so.5
#56 0x00007fbfbad24690 in KJob::emitResult() () from /usr/lib64/libkdecore.so.5
#57 0x0000003c4afa30c6 in QObject::event(QEvent*) () from /usr/lib64/qt4/libQtCore.so.4
#58 0x0000003c4c3daf8c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/qt4/libQtGui.so.4
#59 0x0000003c4c3e1808 in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/qt4/libQtGui.so.4
#60 0x00007fbfbb321d4a in KApplication::notify(QObject*, QEvent*) () from /usr/lib64/libkdeui.so.5
#61 0x0000003c4af8a2cc in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib64/qt4/libQtCore.so.4
#62 0x0000003c4af8d528 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib64/qt4/libQtCore.so.4
#63 0x0000003c4afb9013 in postEventSourceDispatch(_GSource*, int (*)(void*), void*) () from /usr/lib64/qt4/libQtCore.so.4
#64 0x00007fbfb89841b7 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#65 0x00007fbfb8984528 in g_main_context_iterate.isra.22 () from /usr/lib64/libglib-2.0.so.0
#66 0x00007fbfb89845ec in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#67 0x0000003c4afb88a5 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#68 0x0000003c4c47d646 in QGuiEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtGui.so.4
#69 0x0000003c4af88e2f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#70 0x0000003c4af8916d in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#71 0x0000003c4af8e62b in QCoreApplication::exec() () from /usr/lib64/qt4/libQtCore.so.4
#72 0x0000000000403bb0 in main ()

Reported using DrKonqi
Comment 1 Denis Kurz 2016-09-24 20:55:58 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 kdepim (version 5.0 or later, as part of KDE Applications 15.08 or later), it gets closed in about three months.
Comment 2 Denis Kurz 2017-01-07 21:44:00 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.