Bug 285938 - Kontact/Akregator crash
Summary: Kontact/Akregator crash
Status: RESOLVED FIXED
Alias: None
Product: kontact
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Compiled Sources Linux
: NOR crash
Target Milestone: ---
Assignee: kdepim bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-11-06 22:05 UTC by Simon
Modified: 2011-11-07 20:36 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In: 4.7.4


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Simon 2011-11-06 22:05:50 UTC
Application: kontact (4.7.3)
KDE Platform Version: 4.7.3 (4.7.3) (Compiled from sources)
Qt Version: 4.8.0
Operating System: Linux 3.1.0-gentoo x86_64
Distribution: "Gentoo Base System release 2.0.3"

-- Information about the crash:
Every time I stop Kontact using Ctrl+Q or File->Exit, I got a crash with this call stack.

The crash can be reproduced every time.

-- Backtrace:
Application: Kontact (kontact), signal: Segmentation fault
[Current thread is 1 (Thread 0x7fa353450760 (LWP 28357))]

Thread 3 (Thread 0x7fa33ca9b700 (LWP 28358)):
#0  pthread_cond_wait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007fa34fc875fc in WTF::TCMalloc_PageHeap::scavengerThread (this=0x7fa350672720) at wtf/FastMalloc.cpp:2495
#2  0x00007fa34fc87729 in WTF::TCMalloc_PageHeap::runScavengerThread (context=<value optimized out>) at wtf/FastMalloc.cpp:1618
#3  0x00007fa34af36d4c in start_thread (arg=0x7fa33ca9b700) at pthread_create.c:301
#4  0x00007fa3509bc2ad in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 2 (Thread 0x7fa33c19a700 (LWP 28359)):
#0  0x00007fa3509b3633 in __poll (fds=<value optimized out>, nfds=<value optimized out>, timeout=<value optimized out>) at ../sysdeps/unix/sysv/linux/poll.c:87
#1  0x00007fa349d74c68 in ?? () from /usr/lib64/libglib-2.0.so.0
#2  0x00007fa349d75129 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#3  0x00007fa351d9c666 in QEventDispatcherGlib::processEvents (this=0xcbb670, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:426
#4  0x00007fa351d6c512 in QEventLoop::processEvents (this=<value optimized out>, flags=...) at kernel/qeventloop.cpp:149
#5  0x00007fa351d6c767 in QEventLoop::exec (this=0x7fa33c199e20, flags=...) at kernel/qeventloop.cpp:204
#6  0x00007fa351c6d0d7 in QThread::exec (this=<value optimized out>) at thread/qthread.cpp:501
#7  0x00007fa351c700fb in QThreadPrivate::start (arg=0xcbaa70) at thread/qthread_unix.cpp:298
#8  0x00007fa34af36d4c in start_thread (arg=0x7fa33c19a700) at pthread_create.c:301
#9  0x00007fa3509bc2ad in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 1 (Thread 0x7fa353450760 (LWP 28357)):
[KCrash Handler]
#6  0x0000000000000000 in ?? ()
#7  0x00007fa2ef2f5b8f in qDeleteAll<QList<Akregator::TreeNode*>::const_iterator> (begin=..., end=...) at /usr/include/qt4/QtCore/qalgorithms.h:322
#8  0x00007fa2ef2f369d in qDeleteAll<QList<Akregator::TreeNode*> > (this=0x5029060, __in_chrg=<value optimized out>) at /usr/include/qt4/QtCore/qalgorithms.h:330
#9  Akregator::Folder::FolderPrivate::~FolderPrivate (this=0x5029060, __in_chrg=<value optimized out>) at /usr/src/debug/kde-base/akregator-4.7.3/akregator-4.7.3/akregator/src/folder.cpp:68
#10 0x00007fa2ef2f3728 in Akregator::Folder::~Folder (this=0x502a460, __in_chrg=<value optimized out>) at /usr/src/debug/kde-base/akregator-4.7.3/akregator-4.7.3/akregator/src/folder.cpp:95
#11 0x00007fa2ef2f376b in Akregator::Folder::~Folder (this=0x502a460, __in_chrg=<value optimized out>) at /usr/src/debug/kde-base/akregator-4.7.3/akregator-4.7.3/akregator/src/folder.cpp:97
#12 0x00007fa2ef2f5b8f in qDeleteAll<QList<Akregator::TreeNode*>::const_iterator> (begin=..., end=...) at /usr/include/qt4/QtCore/qalgorithms.h:322
#13 0x00007fa2ef2f369d in qDeleteAll<QList<Akregator::TreeNode*> > (this=0x1c58670, __in_chrg=<value optimized out>) at /usr/include/qt4/QtCore/qalgorithms.h:330
#14 Akregator::Folder::FolderPrivate::~FolderPrivate (this=0x1c58670, __in_chrg=<value optimized out>) at /usr/src/debug/kde-base/akregator-4.7.3/akregator-4.7.3/akregator/src/folder.cpp:68
#15 0x00007fa2ef2f3728 in Akregator::Folder::~Folder (this=0x1c5dc80, __in_chrg=<value optimized out>) at /usr/src/debug/kde-base/akregator-4.7.3/akregator-4.7.3/akregator/src/folder.cpp:95
#16 0x00007fa2ef2f376b in Akregator::Folder::~Folder (this=0x1c5dc80, __in_chrg=<value optimized out>) at /usr/src/debug/kde-base/akregator-4.7.3/akregator-4.7.3/akregator/src/folder.cpp:97
#17 0x00007fa2ef2f5b8f in qDeleteAll<QList<Akregator::TreeNode*>::const_iterator> (begin=..., end=...) at /usr/include/qt4/QtCore/qalgorithms.h:322
#18 0x00007fa2ef2f369d in qDeleteAll<QList<Akregator::TreeNode*> > (this=0x1e3d1e0, __in_chrg=<value optimized out>) at /usr/include/qt4/QtCore/qalgorithms.h:330
#19 Akregator::Folder::FolderPrivate::~FolderPrivate (this=0x1e3d1e0, __in_chrg=<value optimized out>) at /usr/src/debug/kde-base/akregator-4.7.3/akregator-4.7.3/akregator/src/folder.cpp:68
#20 0x00007fa2ef2f3728 in Akregator::Folder::~Folder (this=0xc0aee0, __in_chrg=<value optimized out>) at /usr/src/debug/kde-base/akregator-4.7.3/akregator-4.7.3/akregator/src/folder.cpp:95
#21 0x00007fa2ef2f376b in Akregator::Folder::~Folder (this=0xc0aee0, __in_chrg=<value optimized out>) at /usr/src/debug/kde-base/akregator-4.7.3/akregator-4.7.3/akregator/src/folder.cpp:97
#22 0x00007fa2ef2f5b8f in qDeleteAll<QList<Akregator::TreeNode*>::const_iterator> (begin=..., end=...) at /usr/include/qt4/QtCore/qalgorithms.h:322
#23 0x00007fa2ef2f369d in qDeleteAll<QList<Akregator::TreeNode*> > (this=0x14ffbd0, __in_chrg=<value optimized out>) at /usr/include/qt4/QtCore/qalgorithms.h:330
#24 Akregator::Folder::FolderPrivate::~FolderPrivate (this=0x14ffbd0, __in_chrg=<value optimized out>) at /usr/src/debug/kde-base/akregator-4.7.3/akregator-4.7.3/akregator/src/folder.cpp:68
#25 0x00007fa2ef2f3728 in Akregator::Folder::~Folder (this=0x15b9210, __in_chrg=<value optimized out>) at /usr/src/debug/kde-base/akregator-4.7.3/akregator-4.7.3/akregator/src/folder.cpp:95
#26 0x00007fa2ef2f376b in Akregator::Folder::~Folder (this=0x15b9210, __in_chrg=<value optimized out>) at /usr/src/debug/kde-base/akregator-4.7.3/akregator-4.7.3/akregator/src/folder.cpp:97
#27 0x00007fa2ef2e6a76 in Akregator::FeedList::setRootNode (this=0x15c7360, folder=0x0) at /usr/src/debug/kde-base/akregator-4.7.3/akregator-4.7.3/akregator/src/feedlist.cpp:435
#28 0x00007fa2ef2e7498 in Akregator::FeedList::~FeedList (this=0x15c7360, __in_chrg=<value optimized out>) at /usr/src/debug/kde-base/akregator-4.7.3/akregator-4.7.3/akregator/src/feedlist.cpp:315
#29 0x00007fa2ef2e755b in Akregator::FeedList::~FeedList (this=0x15c7360, __in_chrg=<value optimized out>) at /usr/src/debug/kde-base/akregator-4.7.3/akregator-4.7.3/akregator/src/feedlist.cpp:319
#30 0x00007fa2ef788981 in checked_delete<Akregator::FeedList> (this=<value optimized out>) at /usr/include/boost-1_46/boost/checked_delete.hpp:34
#31 boost::detail::sp_counted_impl_p<Akregator::FeedList>::dispose (this=<value optimized out>) at /usr/include/boost-1_46/boost/smart_ptr/detail/sp_counted_impl.hpp:78
#32 0x00007fa2ef79cd6f in release (this=0x1a31b00, list=<value optimized out>) at /usr/include/boost-1_46/boost/smart_ptr/detail/sp_counted_base_gcc_x86.hpp:145
#33 ~shared_count (this=0x1a31b00, list=<value optimized out>) at /usr/include/boost-1_46/boost/smart_ptr/detail/shared_count.hpp:217
#34 ~shared_ptr (this=0x1a31b00, list=<value optimized out>) at /usr/include/boost-1_46/boost/smart_ptr/shared_ptr.hpp:168
#35 Akregator::MainWidget::setFeedList (this=0x1a31b00, list=<value optimized out>) at /usr/src/debug/kde-base/akregator-4.7.3/akregator-4.7.3/akregator/src/mainwidget.cpp:419
#36 0x00007fa2ef79ce13 in Akregator::MainWidget::slotOnShutdown (this=0x1a31b00) at /usr/src/debug/kde-base/akregator-4.7.3/akregator-4.7.3/akregator/src/mainwidget.cpp:321
#37 0x00007fa2ef795869 in Akregator::Part::slotOnShutdown (this=0x19d9a00) at /usr/src/debug/kde-base/akregator-4.7.3/akregator-4.7.3/akregator/src/akregator_part.cpp:305
#38 0x00007fa2ef7960a4 in Akregator::Part::~Part (this=0x19d9a00, __in_chrg=<value optimized out>, __vtt_parm=<value optimized out>) at /usr/src/debug/kde-base/akregator-4.7.3/akregator-4.7.3/akregator/src/akregator_part.cpp:377
#39 0x00007fa2ef796213 in Akregator::Part::~Part (this=0x19d9a00, __in_chrg=<value optimized out>, __vtt_parm=<value optimized out>) at /usr/src/debug/kde-base/akregator-4.7.3/akregator-4.7.3/akregator/src/akregator_part.cpp:380
#40 0x00007fa352c479ae in KontactInterface::Plugin::~Plugin() () from /usr/lib64/libkontactinterface.so.4
#41 0x00007fa3393a9a51 in AkregatorPlugin::~AkregatorPlugin (this=0xd68fc0, __in_chrg=<value optimized out>, __vtt_parm=<value optimized out>) at /usr/src/debug/kde-base/akregator-4.7.3/akregator-4.7.3/kontact/plugins/akregator/akregator_plugin.cpp:61
#42 0x00007fa3393a9a6f in AkregatorPlugin::~AkregatorPlugin (this=0xd68fc0, __in_chrg=<value optimized out>, __vtt_parm=<value optimized out>) at /usr/src/debug/kde-base/akregator-4.7.3/akregator-4.7.3/kontact/plugins/akregator/akregator_plugin.cpp:65
#43 0x00007fa35307c9db in Kontact::MainWindow::~MainWindow (this=0xca3ed0, __in_chrg=<value optimized out>, __vtt_parm=<value optimized out>) at /usr/src/debug/kde-base/kontact-4.7.3/kontact-4.7.3/kontact/src/mainwindow.cpp:287
#44 0x00007fa35307caff in Kontact::MainWindow::~MainWindow (this=0xca3ed0, __in_chrg=<value optimized out>, __vtt_parm=<value optimized out>) at /usr/src/debug/kde-base/kontact-4.7.3/kontact-4.7.3/kontact/src/mainwindow.cpp:289
#45 0x00007fa351d86678 in QObject::event (this=0xca3ed0, e=<value optimized out>) at kernel/qobject.cpp:1175
#46 0x00007fa351173adb in QWidget::event (this=0xca3ed0, event=0x183c0a0) at kernel/qwidget.cpp:8809
#47 0x00007fa35152984b in QMainWindow::event (this=0xca3ed0, event=0x183c0a0) at widgets/qmainwindow.cpp:1478
#48 0x00007fa3528f6c38 in KXmlGuiWindow::event(QEvent*) () from /usr/lib64/libkdeui.so.5
#49 0x00007fa351123a34 in notify_helper (this=0xa6a240, receiver=0xca3ed0, e=0x183c0a0) at kernel/qapplication.cpp:4518
#50 QApplicationPrivate::notify_helper (this=0xa6a240, receiver=0xca3ed0, e=0x183c0a0) at kernel/qapplication.cpp:4490
#51 0x00007fa3511288c3 in QApplication::notify (this=0x7fffc0841b10, receiver=0xca3ed0, e=0x183c0a0) at kernel/qapplication.cpp:4379
#52 0x00007fa3527fb586 in KApplication::notify(QObject*, QEvent*) () from /usr/lib64/libkdeui.so.5
#53 0x00007fa351d6d72c in QCoreApplication::notifyInternal (this=0x7fffc0841b10, receiver=0xca3ed0, event=0x183c0a0) at kernel/qcoreapplication.cpp:876
#54 0x00007fa351d70fca in sendEvent (receiver=0x0, event_type=0, data=0xa3a830) at src/corelib/kernel/qcoreapplication.h:231
#55 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0xa3a830) at kernel/qcoreapplication.cpp:1500
#56 0x00007fa351d9c1d3 in sendPostedEvents (s=<value optimized out>) at src/corelib/kernel/qcoreapplication.h:236
#57 postEventSourceDispatch (s=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:279
#58 0x00007fa349d7475d in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#59 0x00007fa349d74f58 in ?? () from /usr/lib64/libglib-2.0.so.0
#60 0x00007fa349d75129 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#61 0x00007fa351d9c5ff in QEventDispatcherGlib::processEvents (this=0xa3a4e0, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:424
#62 0x00007fa3511c641e in QGuiEventDispatcherGlib::processEvents (this=<value optimized out>, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:204
#63 0x00007fa351d6c512 in QEventLoop::processEvents (this=<value optimized out>, flags=...) at kernel/qeventloop.cpp:149
#64 0x00007fa351d6c767 in QEventLoop::exec (this=0x7fffc0841aa0, flags=...) at kernel/qeventloop.cpp:204
#65 0x00007fa351d712c5 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1148
#66 0x00000000004040b3 in main (argc=1, argv=0x7fffc0842158) at /usr/src/debug/kde-base/kontact-4.7.3/kontact-4.7.3/kontact/src/main.cpp:218

This bug may be a duplicate of or related to bug 193780.

Possible duplicates by query: bug 285753, bug 278742, bug 271338, bug 270623, bug 265518.

Reported using DrKonqi
Comment 1 Christoph Feck 2011-11-07 20:36:31 UTC
Git commit 6ae89eee936159dd7d7ca3405fbe6d9d66d86ddd by Christoph Feck.
Committed on 07/11/2011 at 21:29.
Pushed by cfeck into branch 'KDE/4.7'.

Fix crash in Folder destructor

Especially visible with Qt 4.8.0 qDeleteAll() changes, but might also
fix older bugs.

BUG: 285938
CCBUG: 193780
FIXED-IN: 4.7.4
REVIEW: 102981
(cherry picked from commit 3497e5afe51490191825c7b7d475a5fc0702988d)

M  +4    -1    akregator/src/folder.cpp

http://commits.kde.org/kdepim/6ae89eee936159dd7d7ca3405fbe6d9d66d86ddd
Comment 2 Christoph Feck 2011-11-07 20:36:36 UTC
Git commit 3497e5afe51490191825c7b7d475a5fc0702988d by Christoph Feck.
Committed on 07/11/2011 at 21:29.
Pushed by cfeck into branch 'master'.

Fix crash in Folder destructor

Especially visible with Qt 4.8.0 qDeleteAll() changes, but might also
fix older bugs.

BUG: 285938
CCBUG: 193780
FIXED-IN: 4.7.4
REVIEW: 102981

M  +4    -1    akregator/src/folder.cpp

http://commits.kde.org/kdepim/3497e5afe51490191825c7b7d475a5fc0702988d