Bug 371395 - Ktorrent crash while adding magnet link.
Summary: Ktorrent crash while adding magnet link.
Status: RESOLVED FIXED
Alias: None
Product: ktorrent
Classification: Applications
Component: general (show other bugs)
Version: 4.3.1
Platform: Neon Linux
: NOR crash
Target Milestone: ---
Assignee: Joris Guisson
URL:
Keywords: drkonqi
: 368825 (view as bug list)
Depends on:
Blocks:
 
Reported: 2016-10-20 23:26 UTC by Tony
Modified: 2017-06-29 00:24 UTC (History)
2 users (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 Tony 2016-10-20 23:26:41 UTC
Application: ktorrent (4.3.1)
KDE Platform Version: 4.14.16
Qt Version: 4.8.7
Operating System: Linux 4.8.3-040803-generic x86_64
Distribution: KDE neon Developer Edition

-- Information about the crash:
As title says. First time it happens to me, i did notice that sometimes it takes a long time to add them.

- What I was doing when the application crashed:
Adding a magnet link from firefox.

The crash can be reproduced sometimes.

-- Backtrace:
Application: KTorrent (ktorrent), signal: Aborted
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[Current thread is 1 (Thread 0x7fcac03be900 (LWP 20697))]

Thread 5 (Thread 0x7fca98f33700 (LWP 20706)):
#0  0x00007fcabc16fe8d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007fcab19b8235 in send_dg (ansp2_malloced=0x0, resplen2=0x0, anssizp2=0x0, ansp2=0x0, anscp=0x7fca98f31eb0, gotsomewhere=<synthetic pointer>, v_circuit=<synthetic pointer>, ns=0, terrno=0x7fca98f316d8, anssizp=0x7fca98f31810, ansp=0x7fca98f316c8, buflen2=0, buf2=0x0, buflen=43, buf=0x7fca98f31840 "", statp=0x7fca98f33db8) at res_send.c:1165
#2  __libc_res_nsend (statp=statp@entry=0x7fca98f33db8, buf=buf@entry=0x7fca98f31840 "", buflen=buflen@entry=43, buf2=buf2@entry=0x0, buflen2=buflen2@entry=0, ans=ans@entry=0x7fca98f31a50 "\217\212\201\200", anssiz=1024, ansp=0x7fca98f31eb0, ansp2=0x0, nansp2=0x0, resplen2=0x0, ansp2_malloced=0x0) at res_send.c:538
#3  0x00007fcab19b5e32 in __GI___libc_res_nquery (statp=0x7fca98f33db8, name=name@entry=0x7fca98f31ec0 "239.40.137.2.in-addr.arpa", class=class@entry=1, type=type@entry=12, answer=0x7fca98f31a50 "\217\212\201\200", anslen=anslen@entry=1024, answerp=0x7fca98f31eb0, answerp2=0x0, nanswerp2=0x0, resplen2=0x0, answerp2_malloced=0x0) at res_query.c:227
#4  0x00007fcaa886ffa1 in __GI__nss_dns_gethostbyaddr2_r (addr=0x7fca98f32a54, len=4, af=2, result=0x7fca98f32430, buffer=0x7fca98f325f0 "\377\002", buflen=1024, errnop=0x7fca98f33670, h_errnop=0x7fca98f32424, ttlp=0x0) at nss_dns/dns-host.c:485
#5  0x00007fcaa8870723 in _nss_dns_gethostbyaddr_r (addr=<optimized out>, len=<optimized out>, af=<optimized out>, result=<optimized out>, buffer=<optimized out>, buflen=<optimized out>, errnop=0x7fca98f33670, h_errnop=0x7fca98f32424) at nss_dns/dns-host.c:544
#6  0x00007fcabc18e11d in __gethostbyaddr_r (addr=addr@entry=0x7fca98f32a54, len=len@entry=4, type=type@entry=2, resbuf=resbuf@entry=0x7fca98f32430, buffer=0x7fca98f325f0 "\377\002", buflen=1024, result=0x7fca98f32428, h_errnop=0x7fca98f32424) at ../nss/getXXbyYY_r.c:266
#7  0x00007fcabc195c47 in __GI_getnameinfo (sa=sa@entry=0x7fca98f32a50, addrlen=<optimized out>, host=host@entry=0x7fca98f32ad0 "", hostlen=hostlen@entry=199, serv=serv@entry=0x7fca98f32ba0 "", servlen=servlen@entry=199, flags=8) at getnameinfo.c:245
#8  0x00007fcabff3fcf6 in net::ReverseResolver::resolve (this=this@entry=0x3597d10, addr=...) at ../../src/net/reverseresolver.cpp:65
#9  0x00007fcabff3fd78 in net::ReverseResolver::run (this=this@entry=0x3597d10) at ../../src/net/reverseresolver.cpp:74
#10 0x00007fcabff400da in net::ReverseResolverThread::run (this=0x22015d0) at ../../src/net/reverseresolver.cpp:119
#11 0x00007fcabcd6fe3c in QThreadPrivate::start (arg=0x22015d0) at thread/qthread_unix.cpp:352
#12 0x00007fcab904c6fa in start_thread (arg=0x7fca98f33700) at pthread_create.c:333
#13 0x00007fcabc17bb5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 4 (Thread 0x7fca99734700 (LWP 20705)):
#0  __lll_lock_wait_private () at ../sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:95
#1  0x00007fcabc0f4e8d in _int_free (av=0x7fcabc438b20 <main_arena>, p=0x2f9de90, have_lock=0) at malloc.c:3963
#2  0x00007fcabc0f8abc in __GI___libc_free (mem=<optimized out>) at malloc.c:2969
#3  0x00007fcabff6621c in bt::Packet::~Packet (this=0x3368ac0, __in_chrg=<optimized out>) at ../../src/download/packet.cpp:99
#4  bt::Packet::~Packet (this=0x3368ac0, __in_chrg=<optimized out>) at ../../src/download/packet.cpp:100
#5  0x00007fcabff38f11 in QtSharedPointer::ExternalRefCount<bt::Packet>::deref (value=0x3368ac0, d=0x30d2730) at /usr/include/qt4/QtCore/qsharedpointer_impl.h:342
#6  QtSharedPointer::ExternalRefCount<bt::Packet>::internalCopy<bt::Packet> (other=..., this=0x2e2ef98) at /usr/include/qt4/QtCore/qsharedpointer_impl.h:412
#7  QSharedPointer<bt::Packet>::operator= (other=..., this=0x2e2ef98) at /usr/include/qt4/QtCore/qsharedpointer_impl.h:483
#8  net::PacketSocket::write (this=0x2e2ef30, max=439, now=1476990068932) at ../../src/net/packetsocket.cpp:135
#9  0x00007fcabff3e9b8 in net::SocketGroup::processLimited (this=0x1c134b0, up=true, now=1476990068932, allowance=@0x7fca99733c04: 2712) at ../../src/net/socketgroup.cpp:77
#10 0x00007fcabff3ec40 in net::SocketGroup::process (this=0x1c134b0, up=<optimized out>, now=<optimized out>, global_allowance=@0x7fca99733c04: 2712) at ../../src/net/socketgroup.cpp:188
#11 0x00007fcabff3db17 in net::NetworkThread::doGroupsLimited (this=this@entry=0x1c131a0, num_ready=num_ready@entry=7, now=now@entry=1476990068932, allowance=@0x7fca99733c60: 3072) at ../../src/net/networkthread.cpp:111
#12 0x00007fcabff3dd46 in net::NetworkThread::doGroups (this=this@entry=0x1c131a0, num_ready=num_ready@entry=7, now=now@entry=1476990068932, limit=<optimized out>) at ../../src/net/networkthread.cpp:190
#13 0x00007fcabff3d1d5 in net::UploadThread::update (this=0x1c131a0) at ../../src/net/uploadthread.cpp:81
#14 0x00007fcabff3d8c9 in net::NetworkThread::run (this=0x1c131a0) at ../../src/net/networkthread.cpp:48
#15 0x00007fcabcd6fe3c in QThreadPrivate::start (arg=0x1c131a0) at thread/qthread_unix.cpp:352
#16 0x00007fcab904c6fa in start_thread (arg=0x7fca99734700) at pthread_create.c:333
#17 0x00007fcabc17bb5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 3 (Thread 0x7fcaaac7c700 (LWP 20704)):
#0  syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
#1  0x00007fcabcd6e672 in _q_futex (val2=0, addr2=0x0, timeout=0x0, val=2, op=0, addr=0x1c12d80) at thread/qmutex_unix.cpp:99
#2  QMutexPrivate::wait (this=this@entry=0x1c12d80, timeout=timeout@entry=-1) at thread/qmutex_unix.cpp:113
#3  0x00007fcabcd6aa5d in QMutex::lock (this=<optimized out>) at thread/qmutex.cpp:164
#4  0x00007fcabff3bee9 in net::SocketMonitor::lock (this=<optimized out>) at ../../src/net/socketmonitor.cpp:108
#5  0x00007fcabff3d6dc in net::DownloadThread::update (this=0x1c12db0) at ../../src/net/downloadthread.cpp:51
#6  0x00007fcabff3d8c9 in net::NetworkThread::run (this=0x1c12db0) at ../../src/net/networkthread.cpp:48
#7  0x00007fcabcd6fe3c in QThreadPrivate::start (arg=0x1c12db0) at thread/qthread_unix.cpp:352
#8  0x00007fcab904c6fa in start_thread (arg=0x7fcaaac7c700) at pthread_create.c:333
#9  0x00007fcabc17bb5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 2 (Thread 0x7fcaaa47b700 (LWP 20699)):
#0  __lll_lock_wait_private () at ../sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:95
#1  0x00007fcabc0f4e8d in _int_free (av=0x7fcabc438b20 <main_arena>, p=0x2a7b670, have_lock=0) at malloc.c:3963
#2  0x00007fcabc0f8abc in __GI___libc_free (mem=<optimized out>) at malloc.c:2969
#3  0x00007fcabfff3e19 in utp::DelayWindow::~DelayWindow (this=0x2e735c0, __in_chrg=<optimized out>) at ../../src/utp/delaywindow.cpp:38
#4  0x00007fcabffee251 in utp::Connection::~Connection (this=0x280ee00, __in_chrg=<optimized out>) at ../../src/utp/connection.cpp:87
#5  0x00007fcabffee349 in utp::Connection::~Connection (this=0x280ee00, __in_chrg=<optimized out>) at ../../src/utp/connection.cpp:88
#6  0x00007fcabffeb96c in QtSharedPointer::ExternalRefCount<utp::Connection>::deref (value=0x280ee00, d=0x2842010) at /usr/include/qt4/QtCore/qsharedpointer_impl.h:342
#7  QtSharedPointer::ExternalRefCount<utp::Connection>::deref (this=0x2693458) at /usr/include/qt4/QtCore/qsharedpointer_impl.h:336
#8  QtSharedPointer::ExternalRefCount<utp::Connection>::~ExternalRefCount (this=0x2693458, __in_chrg=<optimized out>) at /usr/include/qt4/QtCore/qsharedpointer_impl.h:401
#9  QSharedPointer<utp::Connection>::~QSharedPointer (this=0x2693458, __in_chrg=<optimized out>) at /usr/include/qt4/QtCore/qsharedpointer_impl.h:466
#10 QMap<unsigned short, QSharedPointer<utp::Connection> >::erase (this=0x1dbed60, it=..., it@entry=...) at /usr/include/qt4/QtCore/qmap.h:737
#11 0x00007fcabffe6f8b in utp::UTPServer::cleanup (this=0x1dbe170) at ../../src/utp/utpserver.cpp:520
#12 0x00007fcabce99db1 in QObject::event (this=0x1dbe170, e=<optimized out>) at kernel/qobject.cpp:1222
#13 0x00007fcabd3b1fdc in QApplicationPrivate::notify_helper (this=this@entry=0x1c50830, receiver=receiver@entry=0x1dbe170, e=e@entry=0x7fca9c0191d0) at kernel/qapplication.cpp:4570
#14 0x00007fcabd3b8f16 in QApplication::notify (this=0x7ffd015b35e0, receiver=0x1dbe170, e=0x7fca9c0191d0) at kernel/qapplication.cpp:4356
#15 0x000000000043d0c1 in kt::App::notify (this=<optimized out>, receiver=<optimized out>, event=<optimized out>) at ../../ktorrent/app.cpp:99
#16 0x00007fcabce7f90d in QCoreApplication::notifyInternal (this=0x7ffd015b35e0, receiver=receiver@entry=0x1dbe170, event=event@entry=0x7fca9c0191d0) at kernel/qcoreapplication.cpp:955
#17 0x00007fcabce833c6 in QCoreApplication::sendEvent (event=0x7fca9c0191d0, receiver=0x1dbe170) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:231
#18 QCoreApplicationPrivate::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0, data=0x1c61440) at kernel/qcoreapplication.cpp:1579
#19 0x00007fcabce836a3 in QCoreApplication::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0) at kernel/qcoreapplication.cpp:1472
#20 0x00007fcabceb013e in QCoreApplication::sendPostedEvents () at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:236
#21 postEventSourceDispatch (s=0x7fca9c0012e0) at kernel/qeventdispatcher_glib.cpp:300
#22 0x00007fcab80af1a7 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#23 0x00007fcab80af400 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#24 0x00007fcab80af4ac in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#25 0x00007fcabceb02ae in QEventDispatcherGlib::processEvents (this=0x7fca9c0008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:450
#26 0x00007fcabce7e18f in QEventLoop::processEvents (this=this@entry=0x7fcaaa47acd0, flags=...) at kernel/qeventloop.cpp:149
#27 0x00007fcabce7e4f5 in QEventLoop::exec (this=this@entry=0x7fcaaa47acd0, flags=...) at kernel/qeventloop.cpp:204
#28 0x00007fcabcd6d549 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:538
#29 0x00007fcabcd6fe3c in QThreadPrivate::start (arg=0x1dba7d0) at thread/qthread_unix.cpp:352
#30 0x00007fcab904c6fa in start_thread (arg=0x7fcaaa47b700) at pthread_create.c:333
#31 0x00007fcabc17bb5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 1 (Thread 0x7fcac03be900 (LWP 20697)):
[KCrash Handler]
#6  0x00007fcabc0aa418 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:54
#7  0x00007fcabc0ac01a in __GI_abort () at abort.c:89
#8  0x00007fcabc0ec72a in __libc_message (do_abort=do_abort@entry=2, fmt=fmt@entry=0x7fcabc2056b0 "*** Error in `%s': %s: 0x%s ***\n") at ../sysdeps/posix/libc_fatal.c:175
#9  0x00007fcabc0f6f01 in malloc_printerr (ar_ptr=0x3, ptr=<optimized out>, str=0x7fcabc205ae0 "malloc(): smallbin double linked list corrupted", action=3) at malloc.c:5007
#10 _int_malloc (av=av@entry=0x7fcabc438b20 <main_arena>, bytes=bytes@entry=34) at malloc.c:3387
#11 0x00007fcabc0f85a4 in __GI___libc_malloc (bytes=bytes@entry=34) at malloc.c:2914
#12 0x00007fcabcd68af5 in qMalloc (size=size@entry=34) at global/qmalloc.cpp:55
#13 0x00007fcabcdb8a9f in QString::QString (this=0x7ffd015b1c50, unicode=0x7ffd015b1bf0, size=1) at tools/qstring.cpp:1060
#14 0x00007fcabcd9d41c in qulltoa (l=<optimized out>, l@entry=8, base=base@entry=10, _zero=...) at tools/qlocale_tools.cpp:108
#15 0x00007fcabcd9d4da in qlltoa (l=l@entry=8, base=base@entry=10, zero=..., zero@entry=...) at tools/qlocale_tools.cpp:113
#16 0x00007fcabcd959da in QLocalePrivate::longLongToString (zero=..., group=..., plus=..., minus=..., l=l@entry=8, precision=1, base=10, width=0, flags=0) at tools/qlocale.cpp:2671
#17 0x00007fcabcd95bf9 in QLocalePrivate::longLongToString (this=<optimized out>, l=l@entry=8, precision=precision@entry=-1, base=base@entry=10, width=width@entry=0, flags=0) at tools/qlocale.cpp:2646
#18 0x00007fcabcdc70cf in QString::arg (this=this@entry=0x7ffd015b1e10, a=a@entry=8, fieldWidth=fieldWidth@entry=0, base=base@entry=10, fillChar=...) at tools/qstring.cpp:6776
#19 0x00007fcabff354b7 in QString::arg (fillChar=..., base=10, fieldWidth=0, a=8, this=0x7ffd015b1e10) at /usr/include/qt4/QtCore/qstring.h:744
#20 bt::BEncoder::write (this=this@entry=0x7ffd015b1e80, str=...) at ../../src/bcodec/bencoder.cpp:150
#21 0x00007fcabffe5f12 in bt::MetadataDownload::download (this=this@entry=0x2fbe4c0, piece=piece@entry=12) at ../../src/magnet/metadatadownload.cpp:89
#22 0x00007fcabffe6183 in bt::MetadataDownload::downloadNext (this=this@entry=0x2fbe4c0) at ../../src/magnet/metadatadownload.cpp:99
#23 0x00007fcabffe64f8 in bt::MetadataDownload::data (this=0x2fbe4c0, piece=0, piece_data=...) at ../../src/magnet/metadatadownload.cpp:78
#24 0x00007fcabff61b39 in bt::UTMetaData::data (this=this@entry=0x31a80e0, dict=dict@entry=0x2e2d720, piece_data=...) at ../../src/peer/utmetadata.cpp:87
#25 0x00007fcabff624ff in bt::UTMetaData::handlePacket (this=0x31a80e0, packet=<optimized out>, size=<optimized out>) at ../../src/peer/utmetadata.cpp:68
#26 0x00007fcabff5fd6d in bt::PacketReader::update (this=0x1dd4060, peer=...) at ../../src/peer/packetreader.cpp:70
#27 0x00007fcabff53bd8 in bt::Peer::update (this=0x2e308e0) at ../../src/peer/peer.cpp:592
#28 0x00007fcabff5b9b9 in bt::PeerManager::Private::update (this=0x334ac50) at ../../src/peer/peermanager.cpp:644
#29 0x00007fcabff5ba89 in bt::PeerManager::update (this=<optimized out>) at ../../src/peer/peermanager.cpp:140
#30 0x00007fcabffe2a5e in bt::MagnetDownloader::update (this=<optimized out>) at ../../src/magnet/magnetdownloader.cpp:119
#31 0x0000000000450938 in kt::MagnetModel::updateMagnetDownloaders (this=0x1db8550) at ../../ktorrent/tools/magnetmodel.cpp:84
#32 0x000000000042d26e in kt::Core::update (this=0x1db4ee0) at ../../ktorrent/core.cpp:1075
#33 0x0000000000435e3d in kt::Core::qt_static_metacall (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at ./core.moc:142
#34 0x00007fcabce94010 in QMetaObject::activate (sender=0x1db4f08, m=<optimized out>, local_signal_index=<optimized out>, argv=<optimized out>) at kernel/qobject.cpp:3567
#35 0x00007fcabce99c83 in QObject::event (this=0x1db4f08, e=<optimized out>) at kernel/qobject.cpp:1253
#36 0x00007fcabd3b1fdc in QApplicationPrivate::notify_helper (this=this@entry=0x1c50830, receiver=receiver@entry=0x1db4f08, e=e@entry=0x7ffd015b2690) at kernel/qapplication.cpp:4570
#37 0x00007fcabd3b8f16 in QApplication::notify (this=0x7ffd015b35e0, receiver=0x1db4f08, e=0x7ffd015b2690) at kernel/qapplication.cpp:4356
#38 0x000000000043d0c1 in kt::App::notify (this=<optimized out>, receiver=<optimized out>, event=<optimized out>) at ../../ktorrent/app.cpp:99
#39 0x00007fcabce7f90d in QCoreApplication::notifyInternal (this=0x7ffd015b35e0, receiver=0x1db4f08, event=event@entry=0x7ffd015b2690) at kernel/qcoreapplication.cpp:955
#40 0x00007fcabceb2780 in QCoreApplication::sendEvent (event=0x7ffd015b2690, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:231
#41 QTimerInfoList::activateTimers (this=0x1c522e0) at kernel/qeventdispatcher_unix.cpp:621
#42 0x00007fcabceaf929 in timerSourceDispatch (source=<optimized out>) at kernel/qeventdispatcher_glib.cpp:193
#43 idleTimerSourceDispatch (source=<optimized out>) at kernel/qeventdispatcher_glib.cpp:240
#44 0x00007fcab80af1a7 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#45 0x00007fcab80af400 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#46 0x00007fcab80af4ac in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#47 0x00007fcabceb02ae in QEventDispatcherGlib::processEvents (this=0x1c4a6c0, flags=...) at kernel/qeventdispatcher_glib.cpp:450
#48 0x00007fcabd45f616 in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#49 0x00007fcabce7e18f in QEventLoop::processEvents (this=this@entry=0x7ffd015b2910, flags=...) at kernel/qeventloop.cpp:149
#50 0x00007fcabce7e4f5 in QEventLoop::exec (this=this@entry=0x7ffd015b2910, flags=...) at kernel/qeventloop.cpp:204
#51 0x00007fcabce844b9 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1227
#52 0x00007fcabd3b022c in QApplication::exec () at kernel/qapplication.cpp:3828
#53 0x0000000000427c52 in main (argc=5, argv=0x7ffd015b3728) at ../../ktorrent/main.cpp:186

Possible duplicates by query: bug 355245, bug 348699, bug 347139, bug 347134, bug 347050.

Reported using DrKonqi
Comment 1 Andrius Štikonas 2017-06-29 00:23:35 UTC
KTorrent KF5 port works fine with magnets links as long as botan library is compiled without gmp support.
Comment 2 Andrius Štikonas 2017-06-29 00:24:58 UTC
*** Bug 368825 has been marked as a duplicate of this bug. ***