Bug 216919 - Kontact (knode) crashed with SIGSEGV
Summary: Kontact (knode) crashed with SIGSEGV
Status: RESOLVED FIXED
Alias: None
Product: knode
Classification: Miscellaneous
Component: general (show other bugs)
Version: unspecified
Platform: Unlisted Binaries Linux
: NOR crash
Target Milestone: ---
Assignee: kdepim bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-12-01 12:26 UTC by Michael Tsang
Modified: 2010-04-23 14:28 UTC (History)
0 users

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 Michael Tsang 2009-12-01 12:26:58 UTC
Application that crashed: kontact
Version of the application: 4.3.2
KDE Version: 4.3.2 (KDE 4.3.2)
Qt Version: 4.5.2
Operating System: Linux 2.6.31-15-generic x86_64
Distribution: Ubuntu 9.10

 -- Backtrace:
Application: Kontact (kontact), signal: Segmentation fault
The current source language is "auto; currently c".
[KCrash Handler]
#5  KNArticleFilter::doFilter (this=0x2bfe2a0, f=0x0) at ../../knode/knarticlefilter.cpp:297
#6  0x00007fec0d485426 in KNArticleManager::showHdrs (this=0x2bfd280, clear=<value optimized out>) at ../../knode/knarticlemanager.cpp:303
#7  0x00007fec0d45badb in KNGroupManager::processJob (this=0x2bfd310, j=0x2f033c0) at ../../knode/kngroupmanager.cpp:650
#8  0x00007fec0d44ed2d in KNode::Scheduler::slotJobFinished (this=0x2a9b170, job=0x2f033c0) at ../../knode/scheduler.cpp:195
#9  0x00007fec0d44f3b4 in KNode::Scheduler::qt_metacall (this=0x2a9b170, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fffa612b3c0) at ./scheduler.moc:75
#10 0x00007fec2c65addc in QMetaObject::activate (sender=0x2f033c0, from_signal_index=<value optimized out>, to_signal_index=<value optimized out>, argv=0x50950) at kernel/qobject.cpp:3113
#11 0x00007fec0d44f92f in KNJobData::finished (this=0x7fec2c1ece40, _t1=0x2f033c0) at ./knjobdata.moc:89
#12 0x00007fec0d45070e in KNJobData::qt_metacall (this=0x2f033c0, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fffa612b4d0) at ./knjobdata.moc:77
#13 0x00007fec0d453880 in KNode::ArticleListJob::qt_metacall (this=0x7fec2c1ece40, _c=QMetaObject::InvokeMetaMethod, _id=57701121, _a=0x50950) at ./nntpjobs.moc:121
#14 0x00007fec2c65addc in QMetaObject::activate (sender=0x3ead800, from_signal_index=<value optimized out>, to_signal_index=<value optimized out>, argv=0x50950) at kernel/qobject.cpp:3113
#15 0x00007fec2c65fe1f in QSingleShotTimer::timerEvent (this=0x3ead800) at kernel/qtimer.cpp:298
#16 0x00007fec2c654d83 in QObject::event (this=0x3ead800, e=0x0) at kernel/qobject.cpp:1075
#17 0x00007fec2cf65efc in QApplicationPrivate::notify_helper (this=0x1db3d20, receiver=0x3ead800, e=0x7fffa612bae0) at kernel/qapplication.cpp:4056
#18 0x00007fec2cf6d1ce in QApplication::notify (this=0x7fffa612be40, receiver=0x3ead800, e=0x7fffa612bae0) at kernel/qapplication.cpp:4021
#19 0x00007fec2db9cab6 in KApplication::notify (this=0x7fffa612be40, receiver=0x3ead800, event=0x7fffa612bae0) at ../../kdeui/kernel/kapplication.cpp:302
#20 0x00007fec2c645c2c in QCoreApplication::notifyInternal (this=0x7fffa612be40, receiver=0x3ead800, event=0x7fffa612bae0) at kernel/qcoreapplication.cpp:610
#21 0x00007fec2c670862 in QCoreApplication::sendEvent (this=0x1da3a10) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:213
#22 QTimerInfoList::activateTimers (this=0x1da3a10) at kernel/qeventdispatcher_unix.cpp:572
#23 0x00007fec2c66e25d in timerSourceDispatch (source=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:165
#24 0x00007fec25ebfbbe in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#25 0x00007fec25ec3588 in ?? () from /lib/libglib-2.0.so.0
#26 0x00007fec25ec36b0 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#27 0x00007fec2c66e1a6 in QEventDispatcherGlib::processEvents (this=0x1d79cb0, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:327
#28 0x00007fec2cffa4be in QGuiEventDispatcherGlib::processEvents (this=0x7fec2c1ece40, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:202
#29 0x00007fec2c644532 in QEventLoop::processEvents (this=<value optimized out>, flags=) at kernel/qeventloop.cpp:149
#30 0x00007fec2c644904 in QEventLoop::exec (this=0x7fffa612bd80, flags=) at kernel/qeventloop.cpp:201
#31 0x00007fec2c646ab9 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:888
#32 0x0000000000403f47 in main (argc=<value optimized out>, argv=<value optimized out>) at ../../../kontact/src/main.cpp:218

Reported using DrKonqi
Comment 1 Olivier Trichet 2010-04-23 14:28:08 UTC
SVN commit 1117909 by otrichet:

Use boost::shared_ptr instead of plain pointer to handler KNArticle that are use all over the place.

Side effect: use a QList in KNArticleVector instead of a old fashion array

This fix crash cause by double free and freed-pointer access:
BUG: 172266
BUG: 225813
BUG: 141573
This should also fixed crash that happens while accessing article (that
were certainly already freed):
BUG: 134904
BUG: 216919
BUG: 230536
BUG: 132990

 M  +18 -23    articlewidget.cpp  
 M  +10 -12    articlewidget.h  
 M  +6 -6      headerview.cpp  
 M  +9 -5      knarticle.cpp  
 M  +18 -7     knarticle.h  
 M  +43 -168   knarticlecollection.cpp  
 M  +25 -23    knarticlecollection.h  
 M  +31 -39    knarticlefactory.cpp  
 M  +9 -11     knarticlefactory.h  
 M  +8 -8      knarticlefilter.cpp  
 M  +2 -2      knarticlefilter.h  
 M  +43 -42    knarticlemanager.cpp  
 M  +8 -5      knarticlemanager.h  
 M  +10 -11    knarticlewindow.cpp  
 M  +5 -6      knarticlewindow.h  
 M  +2 -2      kncleanup.cpp  
 M  +6 -6      kncomposer.cpp  
 M  +4 -3      kncomposer.h  
 M  +12 -34    knfolder.cpp  
 M  +14 -7     knfolder.h  
 M  +12 -13    knfoldermanager.cpp  
 M  +26 -42    kngroup.cpp  
 M  +21 -10    kngroup.h  
 M  +11 -14    kngroupbrowser.cpp  
 M  +3 -9      kngroupbrowser.h  
 M  +25 -29    kngroupmanager.cpp  
 M  +6 -1      kngroupmanager.h  
 M  +6 -4      kngroupselectdialog.cpp  
 M  +19 -16    knhdrviewitem.cpp  
 M  +6 -6      knhdrviewitem.h  
 M  +3 -3      knjobdata.cpp  
 M  +11 -4     knjobdata.h  
 M  +15 -13    knmainwidget.cpp  
 M  +5 -8      knmainwidget.h  
 M  +7 -6      knmemorymanager.cpp  
 M  +7 -7      knmemorymanager.h  
 M  +8 -9      knscoring.cpp  
 M  +4 -4      knscoring.h  
 M  +3 -5      knstatusfilter.cpp  
 M  +7 -6      knstatusfilter.h  
 M  +2 -2      mailsendjob.cpp  
 M  +1 -1      mailsendjob.h  
 M  +16 -17    nntpjobs.cpp  
 M  +5 -5      nntpjobs.h  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1117909