Bug 303340 - Ktorrent crashed and not because
Summary: Ktorrent crashed and not because
Status: RESOLVED FIXED
Alias: None
Product: ktorrent
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: openSUSE Linux
: NOR normal
Target Milestone: ---
Assignee: Joris Guisson
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-07-11 02:33 UTC by Santiago
Modified: 2012-07-24 08:13 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 Santiago 2012-07-11 02:33:23 UTC
I was working with the Dolphin as usual, and suddenly the ktorrent closed unexpectedly.
I had the window open Ktorrent, but I had it in the background on the system tray.
This is the first time since I updated KDE 4.8.4 this happens to me.

Reproducible: Couldn't Reproduce




Application: ktorrent (4.2)
KDE Platform Version: 4.8.4 (4.8.4) "release 513"
Qt Version: 4.8.2
Operating System: Linux 3.1.10-1.9-desktop x86_64
Distribution: "openSUSE 12.1 (x86_64)"

-- Backtrace:
Application: KTorrent (ktorrent), signal: Segmentation fault
[Current thread is 1 (Thread 0x7f64b3c66760 (LWP 25035))]

Thread 7 (Thread 0x7f649fc2e700 (LWP 25049)):
#0  0x00007fff09fff98f in clock_gettime ()
#1  0x00007f64aac15d9a in clock_gettime () from /lib64/librt.so.1
#2  0x00007f64b1359014 in do_gettime (frac=0x7f649fc2dbf8, sec=0x7f649fc2dbf0) at tools/qelapsedtimer_unix.cpp:123
#3  qt_gettime () at tools/qelapsedtimer_unix.cpp:140
#4  0x00007f64b143059d in QTimerInfoList::updateCurrentTime (this=0x7f6490001ed0) at kernel/qeventdispatcher_unix.cpp:343
#5  0x00007f64b1430251 in timerSourceCheckHelper (src=<optimized out>) at kernel/qeventdispatcher_glib.cpp:150
#6  timerSourceCheckHelper (src=<optimized out>) at kernel/qeventdispatcher_glib.cpp:144
#7  0x00007f64aa961264 in g_main_context_check () from /usr/lib64/libglib-2.0.so.0
#8  0x00007f64aa961ab2 in ?? () from /usr/lib64/libglib-2.0.so.0
#9  0x00007f64aa961f59 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#10 0x00007f64b142fe36 in QEventDispatcherGlib::processEvents (this=0x7f64900008c0, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:426
#11 0x00007f64b13ff842 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#12 0x00007f64b13ffa97 in QEventLoop::exec (this=0x7f649fc2de20, flags=...) at kernel/qeventloop.cpp:204
#13 0x00007f64b12ff5f7 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:501
#14 0x00007f64b130261b in QThreadPrivate::start (arg=0x90b130) at thread/qthread_unix.cpp:307
#15 0x00007f64b106af05 in start_thread () from /lib64/libpthread.so.0
#16 0x00007f64af95d10d in clone () from /lib64/libc.so.6

Thread 6 (Thread 0x7f64a042f700 (LWP 25154)):
#0  0x00007f64b106ee6c in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f649763ec12 in ?? () from /usr/lib64/libQtWebKit.so.4
#2  0x00007f649763ec49 in ?? () from /usr/lib64/libQtWebKit.so.4
#3  0x00007f64b106af05 in start_thread () from /lib64/libpthread.so.0
#4  0x00007f64af95d10d in clone () from /lib64/libc.so.6

Thread 5 (Thread 0x7f648cd43700 (LWP 25162)):
#0  0x00007fff09fff98f in clock_gettime ()
#1  0x00007f64aac15d9a in clock_gettime () from /lib64/librt.so.1
#2  0x00007f64b1359014 in do_gettime (frac=0x7f648cd42bc8, sec=0x7f648cd42bc0) at tools/qelapsedtimer_unix.cpp:123
#3  qt_gettime () at tools/qelapsedtimer_unix.cpp:140
#4  0x00007f64b143059d in QTimerInfoList::updateCurrentTime (this=0x7f64980020d0) at kernel/qeventdispatcher_unix.cpp:343
#5  0x00007f64b14308d3 in QTimerInfoList::timerWait (this=0x7f64980020d0, tm=...) at kernel/qeventdispatcher_unix.cpp:450
#6  0x00007f64b142f30c in timerSourcePrepareHelper (src=<optimized out>, timeout=0x7f648cd42c8c) at kernel/qeventdispatcher_glib.cpp:136
#7  0x00007f64aa960b22 in g_main_context_prepare () from /usr/lib64/libglib-2.0.so.0
#8  0x00007f64aa96192d in ?? () from /usr/lib64/libglib-2.0.so.0
#9  0x00007f64aa961f59 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#10 0x00007f64b142fe36 in QEventDispatcherGlib::processEvents (this=0x7f64980008c0, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:426
#11 0x00007f64b13ff842 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#12 0x00007f64b13ffa97 in QEventLoop::exec (this=0x7f648cd42e20, flags=...) at kernel/qeventloop.cpp:204
#13 0x00007f64b12ff5f7 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:501
#14 0x00007f64b130261b in QThreadPrivate::start (arg=0x1212d60) at thread/qthread_unix.cpp:307
#15 0x00007f64b106af05 in start_thread () from /lib64/libpthread.so.0
#16 0x00007f64af95d10d in clone () from /lib64/libc.so.6

Thread 4 (Thread 0x7f6488f8b700 (LWP 25278)):
#0  0x00007f64af959cd9 in syscall () from /lib64/libc.so.6
#1  0x00007f64b13010eb in _q_futex (val2=0, addr2=0x0, timeout=0x0, val=2, op=0, addr=0x6eee10) at thread/qmutex_unix.cpp:99
#2  QMutexPrivate::wait (this=0x6eee10, timeout=<optimized out>) at thread/qmutex_unix.cpp:113
#3  0x00007f64b12fd00d in QMutex::lock (this=<optimized out>) at thread/qmutex.cpp:164
#4  0x00007f64b3779450 in update (this=0x6eeb80) at /usr/src/debug/libktorrent-1.2.0/src/net/downloadthread.cpp:51
#5  net::DownloadThread::update (this=0x6eeb80) at /usr/src/debug/libktorrent-1.2.0/src/net/downloadthread.cpp:46
#6  0x00007f64b3779649 in net::NetworkThread::run (this=0x6eeb80) at /usr/src/debug/libktorrent-1.2.0/src/net/networkthread.cpp:48
#7  0x00007f64b130261b in QThreadPrivate::start (arg=0x6eeb80) at thread/qthread_unix.cpp:307
#8  0x00007f64b106af05 in start_thread () from /lib64/libpthread.so.0
#9  0x00007f64af95d10d in clone () from /lib64/libc.so.6

Thread 3 (Thread 0x7f6433fff700 (LWP 25279)):
#0  0x00007f64b3761e12 in bt::Now () at /usr/src/debug/libktorrent-1.2.0/src/util/functions.cpp:71
#1  0x00007f64b3778d85 in update (this=0x6ef090) at /usr/src/debug/libktorrent-1.2.0/src/net/uploadthread.cpp:51
#2  net::UploadThread::update (this=0x6ef090) at /usr/src/debug/libktorrent-1.2.0/src/net/uploadthread.cpp:43
#3  0x00007f64b3779649 in net::NetworkThread::run (this=0x6ef090) at /usr/src/debug/libktorrent-1.2.0/src/net/networkthread.cpp:48
#4  0x00007f64b130261b in QThreadPrivate::start (arg=0x6ef090) at thread/qthread_unix.cpp:307
#5  0x00007f64b106af05 in start_thread () from /lib64/libpthread.so.0
#6  0x00007f64af95d10d in clone () from /lib64/libc.so.6

Thread 2 (Thread 0x7f64337fe700 (LWP 25280)):
#0  0x00007f64b106ee6c in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f64b1302b2b in wait (time=18446744073709551615, this=0x1406d00) at thread/qwaitcondition_unix.cpp:86
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x16a8c50, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:158
#3  0x00007f64b377c07a in net::ReverseResolverThread::run (this=0x16a8c40) at /usr/src/debug/libktorrent-1.2.0/src/net/reverseresolver.cpp:124
#4  0x00007f64b130261b in QThreadPrivate::start (arg=0x16a8c40) at thread/qthread_unix.cpp:307
#5  0x00007f64b106af05 in start_thread () from /lib64/libpthread.so.0
#6  0x00007f64af95d10d in clone () from /lib64/libc.so.6

Thread 1 (Thread 0x7f64b3c66760 (LWP 25035)):
[KCrash Handler]
#6  QString::fromLatin1_helper (str=0x1 <Address 0x1 out of bounds>, size=-1) at tools/qstring.cpp:3821
#7  0x00007f64b134e11d in QString::fromAscii_helper (str=<optimized out>, size=<optimized out>) at tools/qstring.cpp:3887
#8  0x00007f64942fee38 in QString (ch=<optimized out>, this=0x7fff09e812b0) at /usr/include/QtCore/qstring.h:419
#9  kt::GeoIPManager::countryName (this=<optimized out>, country_id=<optimized out>) at /usr/src/debug/ktorrent-4.2.0/plugins/infowidget/geoipmanager.cpp:100
#10 0x00007f64942f1c10 in kt::PeerViewModel::Item::Item (this=0x165f950, peer=<optimized out>, geo_ip=0xf1d900) at /usr/src/debug/ktorrent-4.2.0/plugins/infowidget/peerviewmodel.cpp:55
#11 0x00007f64942f47a5 in kt::PeerViewModel::peerAdded (this=0xf1df80, peer=0x132dd90) at /usr/src/debug/ktorrent-4.2.0/plugins/infowidget/peerviewmodel.cpp:176
#12 0x00007f64b1414c41 in QMetaObject::activate (sender=0x979070, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fff09e81490) at kernel/qobject.cpp:3556
#13 0x00007f64b378ff5f in bt::PeerManager::newPeer (this=<optimized out>, _t1=0x132dd80) at /usr/src/debug/libktorrent-1.2.0/build/src/peermanager.moc:107
#14 0x00007f64b3792a24 in bt::PeerManager::Private::createPeer (this=0x979130, sock=<optimized out>, peer_id=..., support=21, local=false) at /usr/src/debug/libktorrent-1.2.0/src/peer/peermanager.cpp:742
#15 0x00007f64b3792d16 in bt::PeerManager::peerAuthenticated (this=0x979070, auth=0x1ecf8a0, pcon=..., ok=<optimized out>) at /usr/src/debug/libktorrent-1.2.0/src/peer/peermanager.cpp:252
#16 0x00007f64b3799736 in bt::PeerConnector::Private::authenticationFinished (this=0x1de8940, auth=0x1ecf8a0, ok=true) at /usr/src/debug/libktorrent-1.2.0/src/peer/peerconnector.cpp:139
#17 0x00007f64b3782f64 in bt::Authenticate::onFinish (this=0x1ecf8a0, succes=true) at /usr/src/debug/libktorrent-1.2.0/src/peer/authenticate.cpp:166
#18 0x00007f64b37825be in bt::Authenticate::handshakeReceived (this=0x1ecf8a0, full=<optimized out>) at /usr/src/debug/libktorrent-1.2.0/src/peer/authenticate.cpp:202
#19 0x00007f64b3780136 in mse::EncryptedAuthenticate::findVC (this=0x1ecf8a0) at /usr/src/debug/libktorrent-1.2.0/src/mse/encryptedauthenticate.cpp:161
#20 0x00007f64b3783ba9 in bt::AuthenticationMonitor::handleData (this=0x6dee40) at /usr/src/debug/libktorrent-1.2.0/src/peer/authenticationmonitor.cpp:136
#21 0x00007f64b3783d28 in bt::AuthenticationMonitor::update (this=0x6dee40) at /usr/src/debug/libktorrent-1.2.0/src/peer/authenticationmonitor.cpp:111
#22 0x000000000042dc0f in kt::Core::update (this=0x91a5d0) at /usr/src/debug/ktorrent-4.2.0/ktorrent/core.cpp:1037
#23 0x000000000043517a in kt::Core::qt_static_metacall (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at /usr/src/debug/ktorrent-4.2.0/build/ktorrent/core.moc:141
#24 0x00007f64b1414c41 in QMetaObject::activate (sender=0x91a5f8, m=<optimized out>, local_signal_index=<optimized out>, argv=0x0) at kernel/qobject.cpp:3556
#25 0x00007f64b1419b39 in QObject::event (this=0x91a5f8, e=<optimized out>) at kernel/qobject.cpp:1166
#26 0x00007f64b0566fe4 in notify_helper (e=0x7fff09e82060, receiver=0x91a5f8, this=0x77de30) at kernel/qapplication.cpp:4551
#27 QApplicationPrivate::notify_helper (this=0x77de30, receiver=0x91a5f8, e=0x7fff09e82060) at kernel/qapplication.cpp:4523
#28 0x00007f64b056bdb3 in QApplication::notify (this=0x7fff09e823f0, receiver=0x91a5f8, e=0x7fff09e82060) at kernel/qapplication.cpp:4412
#29 0x000000000043b7d1 in kt::App::notify (this=<optimized out>, receiver=<optimized out>, event=<optimized out>) at /usr/src/debug/ktorrent-4.2.0/ktorrent/app.cpp:99
#30 0x00007f64b1400d0c in QCoreApplication::notifyInternal (this=0x7fff09e823f0, receiver=0x91a5f8, event=0x7fff09e82060) at kernel/qcoreapplication.cpp:915
#31 0x00007f64b1431be8 in sendEvent (event=0x7fff09e82060, receiver=<optimized out>) at kernel/qcoreapplication.h:231
#32 QTimerInfoList::activateTimers (this=0x77a8a0) at kernel/qeventdispatcher_unix.cpp:626
#33 0x00007f64b142f59d in timerSourceDispatch (source=<optimized out>) at kernel/qeventdispatcher_glib.cpp:186
#34 timerSourceDispatch (source=<optimized out>) at kernel/qeventdispatcher_glib.cpp:180
#35 0x00007f64b142f5c1 in idleTimerSourceDispatch (source=<optimized out>) at kernel/qeventdispatcher_glib.cpp:233
#36 0x00007f64aa96158d in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#37 0x00007f64aa961d88 in ?? () from /usr/lib64/libglib-2.0.so.0
#38 0x00007f64aa961f59 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#39 0x00007f64b142fdcf in QEventDispatcherGlib::processEvents (this=0x6e6320, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:424
#40 0x00007f64b060a69e in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=<optimized out>) at kernel/qguieventdispatcher_glib.cpp:204
#41 0x00007f64b13ff842 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#42 0x00007f64b13ffa97 in QEventLoop::exec (this=0x7fff09e82380, flags=...) at kernel/qeventloop.cpp:204
#43 0x00007f64b14048b5 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1187
#44 0x000000000042a351 in main (argc=5, argv=0x7fff09e83268) at /usr/src/debug/ktorrent-4.2.0/ktorrent/main.cpp:177

Informar a https://bugs.kde.org
Comment 1 Joris Guisson 2012-07-19 16:39:20 UTC
Git commit 24ced46c624604a34f6c24c26acfd9281f994524 by Joris Guisson.
Committed on 19/07/2012 at 18:38.
Pushed by guisson into branch 'master'.

Fix crash when looking up country for IP address

M  +1    -0    ChangeLog
M  +2    -2    plugins/infowidget/geoipmanager.cpp

http://commits.kde.org/ktorrent/24ced46c624604a34f6c24c26acfd9281f994524
Comment 2 Maarten Bezemer 2012-07-24 08:13:52 UTC
Thank you for this patch, it seems to have fixed the nasty/random crashes I experienced!