Bug 473111

Summary: Opening magnet immediately crashes
Product: [Applications] ktorrent Reporter: Darin McBride <Tanktalus>
Component: generalAssignee: Joris Guisson <joris.guisson>
Status: REPORTED ---    
Severity: crash Keywords: drkonqi
Priority: NOR    
Version First Reported In: 23.04.3   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description Darin McBride 2023-08-07 13:21:17 UTC
Application: ktorrent (23.04.3)
 (Compiled from sources)
Qt Version: 5.15.10
Frameworks Version: 5.108.0
Operating System: Linux 6.1.12-gentoo x86_64
Windowing System: X11
Distribution: "Gentoo Linux"
DrKonqi: 5.27.7 [KCrashBackend]

-- Information about the crash:
Whether ktorrent is started from chrome with the magnet or I use the open url option inside ktorrent, I get a crash.

The crash can be reproduced every time.

-- Backtrace:
Application: KTorrent (ktorrent), signal: Aborted
Content of s_kcrashErrorMessage: std::unique_ptr<char []> = {get() = 0x0}
[KCrash Handler]
#6  __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44
#7  0x00007f9f1658ed6f in __pthread_kill_internal (signo=6, threadid=<optimized out>) at pthread_kill.c:78
#8  0x00007f9f16541532 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
#9  0x00007f9f1652b4b2 in __GI_abort () at abort.c:79
#10 0x00007f9f18d4fcc3 in bt::QtMessageOutput (type=<optimized out>, msg=...) at /var/tmp/portage/net-libs/libktorrent-23.04.3/work/libktorrent-23.04.3/src/util/log.cpp:296
#11 0x00007f9f16adaf20 in qt_message_print (msgType=msgType@entry=QtFatalMsg, context=..., message=...) at /var/tmp/portage/dev-qt/qtcore-5.15.10/work/qtbase-everywhere-src-5.15.10/src/corelib/global/qlogging.cpp:1843
#12 0x00007f9f16adb078 in qt_message(QtMsgType, const QMessageLogContext &, const char *, typedef __va_list_tag __va_list_tag *) (msgType=msgType@entry=QtFatalMsg, context=..., msg=msg@entry=0x7f9f16dd1988 "ASSERT: \"%s\" in file %s, line %d", ap=ap@entry=0x7ffc69129720) at /var/tmp/portage/dev-qt/qtcore-5.15.10/work/qtbase-everywhere-src-5.15.10/src/corelib/global/qlogging.cpp:378
#13 0x00007f9f16a85036 in QMessageLogger::fatal (this=this@entry=0x7ffc69129808, msg=msg@entry=0x7f9f16dd1988 "ASSERT: \"%s\" in file %s, line %d") at /var/tmp/portage/dev-qt/qtcore-5.15.10/work/qtbase-everywhere-src-5.15.10/src/corelib/global/qlogging.cpp:890
#14 0x00007f9f16a83c64 in qt_assert (assertion=assertion@entry=0x7f9f16eb7ab2 "last < rowCount(parent)", file=file@entry=0x7f9f16eb7508 "/var/tmp/portage/dev-qt/qtcore-5.15.10/work/qtbase-everywhere-src-5.15.10/src/corelib/itemmodels/qabstractitemmodel.cpp", line=line@entry=2815) at /var/tmp/portage/dev-qt/qtcore-5.15.10/work/qtbase-everywhere-src-5.15.10/src/corelib/global/qglobal.cpp:3391
#15 0x00007f9f16aa6424 in QAbstractItemModel::beginRemoveRows (this=0x55ed568cdb50, parent=..., first=0, last=0) at /var/tmp/portage/dev-qt/qtcore-5.15.10/work/qtbase-everywhere-src-5.15.10/src/corelib/itemmodels/qabstractitemmodel.cpp:2815
#16 0x000055ed53e6fc74 in kt::MagnetModel::removeRows (parent=..., count=<optimized out>, row=0, this=0x55ed568cdb50) at /var/tmp/portage/net-p2p/ktorrent-23.04.3/work/ktorrent-23.04.3/ktorrent/tools/magnetmodel.cpp:142
#17 kt::MagnetModel::onUpdateQueue (this=0x55ed568cdb50, idx=0, count=0) at /var/tmp/portage/net-p2p/ktorrent-23.04.3/work/ktorrent-23.04.3/ktorrent/tools/magnetmodel.cpp:60
#18 0x00007f9f16d1c960 in QtPrivate::QSlotObjectBase::call (a=0x7ffc69129a70, r=0x55ed568cdb50, this=0x55ed568cdc90) at /var/tmp/portage/dev-qt/qtcore-5.15.10/work/qtbase-everywhere-src-5.15.10/include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#19 doActivate<false> (sender=0x55ed56791060, signal_index=4, argv=0x7ffc69129a70) at /var/tmp/portage/dev-qt/qtcore-5.15.10/work/qtbase-everywhere-src-5.15.10/src/corelib/kernel/qobject.cpp:3925
#20 0x00007f9f16d155d7 in QMetaObject::activate (sender=<optimized out>, m=m@entry=0x7f9f18f70f40 <kt::MagnetManager::staticMetaObject>, local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x7ffc69129a70) at /var/tmp/portage/dev-qt/qtcore-5.15.10/work/qtbase-everywhere-src-5.15.10/src/corelib/kernel/qobject.cpp:3985
#21 0x00007f9f18efc0d6 in kt::MagnetManager::updateQueue (this=<optimized out>, _t1=<optimized out>, _t2=<optimized out>) at /var/tmp/portage/net-p2p/ktorrent-23.04.3/work/ktorrent-23.04.3_build/libktcore/ktcore_autogen/WEMDBQPFF4/moc_magnetmanager.cpp:379
#22 0x00007f9f16d1c960 in QtPrivate::QSlotObjectBase::call (a=0x7ffc69129b80, r=0x55ed56791060, this=0x55ed56fcf2e0) at /var/tmp/portage/dev-qt/qtcore-5.15.10/work/qtbase-everywhere-src-5.15.10/include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#23 doActivate<false> (sender=0x7f9f04008090, signal_index=3, argv=0x7ffc69129b80) at /var/tmp/portage/dev-qt/qtcore-5.15.10/work/qtbase-everywhere-src-5.15.10/src/corelib/kernel/qobject.cpp:3925
#24 0x00007f9f16d155d7 in QMetaObject::activate (sender=sender@entry=0x7f9f04008090, m=m@entry=0x7f9f18e936e0 <bt::MagnetDownloader::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffc69129b80) at /var/tmp/portage/dev-qt/qtcore-5.15.10/work/qtbase-everywhere-src-5.15.10/src/corelib/kernel/qobject.cpp:3985
#25 0x00007f9f18d3dc24 in bt::MagnetDownloader::foundMetadata (this=this@entry=0x7f9f04008090, _t1=<optimized out>, _t1@entry=0x7f9f04008090, _t2=...) at /var/tmp/portage/net-libs/libktorrent-23.04.3/work/libktorrent-23.04.3_build/src/KF5Torrent_autogen/6GCMQGYYC7/moc_magnetdownloader.cpp:149
#26 0x00007f9f18e19315 in bt::MagnetDownloader::onMetadataDownloaded (this=0x7f9f04008090, data=...) at /var/tmp/portage/net-libs/libktorrent-23.04.3/work/libktorrent-23.04.3/src/magnet/magnetdownloader.cpp:192
#27 0x00007f9f16d1c960 in QtPrivate::QSlotObjectBase::call (a=0x7ffc69129cd0, r=0x7f9f04008090, this=0x55ed570055e0) at /var/tmp/portage/dev-qt/qtcore-5.15.10/work/qtbase-everywhere-src-5.15.10/include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#28 doActivate<false> (sender=0x7f9f040084d0, signal_index=3, argv=0x7ffc69129cd0) at /var/tmp/portage/dev-qt/qtcore-5.15.10/work/qtbase-everywhere-src-5.15.10/src/corelib/kernel/qobject.cpp:3925
#29 0x00007f9f16d155d7 in QMetaObject::activate (sender=<optimized out>, m=m@entry=0x7f9f18e93520 <bt::Peer::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffc69129cd0) at /var/tmp/portage/dev-qt/qtcore-5.15.10/work/qtbase-everywhere-src-5.15.10/src/corelib/kernel/qobject.cpp:3985
#30 0x00007f9f18d3dd22 in bt::Peer::metadataDownloaded (this=<optimized out>, _t1=...) at /var/tmp/portage/net-libs/libktorrent-23.04.3/work/libktorrent-23.04.3_build/src/KF5Torrent_autogen/75RTQQQH7L/moc_peer.cpp:145
#31 0x00007f9f18d881ea in bt::UTMetaData::handlePacket (this=0x55ed56fdc380, packet=<optimized out>, size=<optimized out>) at /var/tmp/portage/net-libs/libktorrent-23.04.3/work/libktorrent-23.04.3/src/peer/utmetadata.cpp:50
#32 0x00007f9f18d85109 in bt::PacketReader::update (this=0x55ed56fdc5f0, peer=...) at /usr/include/qt5/QtCore/qscopedpointer.h:138
#33 0x00007f9f18d7783e in bt::Peer::update (this=0x7f9f040084d0) at /var/tmp/portage/net-libs/libktorrent-23.04.3/work/libktorrent-23.04.3/src/peer/peer.cpp:513
#34 0x00007f9f18d7ebe1 in bt::PeerManager::Private::update (this=0x7f9f04007d70) at /var/tmp/portage/net-libs/libktorrent-23.04.3/work/libktorrent-23.04.3/src/peer/peermanager.cpp:580
#35 0x00007f9f18d7ecd9 in bt::PeerManager::update (this=<optimized out>) at /var/tmp/portage/net-libs/libktorrent-23.04.3/work/libktorrent-23.04.3/src/peer/peermanager.cpp:121
#36 0x00007f9f18e1851e in bt::MagnetDownloader::update (this=<optimized out>) at /var/tmp/portage/net-libs/libktorrent-23.04.3/work/libktorrent-23.04.3/src/magnet/magnetdownloader.cpp:104
#37 0x00007f9f18f1244e in kt::MagnetManager::update (this=0x55ed56791060) at /var/tmp/portage/net-p2p/ktorrent-23.04.3/work/ktorrent-23.04.3/libktcore/torrent/magnetmanager.cpp:339
#38 0x000055ed53e3c16a in kt::Core::update (this=0x55ed5679e130) at /var/tmp/portage/net-p2p/ktorrent-23.04.3/work/ktorrent-23.04.3/ktorrent/core.cpp:900
#39 0x00007f9f16d1c960 in QtPrivate::QSlotObjectBase::call (a=0x7ffc6912a050, r=0x55ed5679e130, this=0x55ed5659e750) at /var/tmp/portage/dev-qt/qtcore-5.15.10/work/qtbase-everywhere-src-5.15.10/include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#40 doActivate<false> (sender=0x55ed5679e158, signal_index=3, argv=0x7ffc6912a050) at /var/tmp/portage/dev-qt/qtcore-5.15.10/work/qtbase-everywhere-src-5.15.10/src/corelib/kernel/qobject.cpp:3925
#41 0x00007f9f16d155d7 in QMetaObject::activate (sender=<optimized out>, m=m@entry=0x7f9f17003300 <QTimer::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffc6912a050) at /var/tmp/portage/dev-qt/qtcore-5.15.10/work/qtbase-everywhere-src-5.15.10/src/corelib/kernel/qobject.cpp:3985
#42 0x00007f9f16d2152a in QTimer::timeout (this=<optimized out>, _t1=...) at .moc/moc_qtimer.cpp:208
#43 0x00007f9f16d10d85 in QObject::event (this=0x55ed5679e158, e=0x7ffc6912a1c0) at /var/tmp/portage/dev-qt/qtcore-5.15.10/work/qtbase-everywhere-src-5.15.10/src/corelib/kernel/qobject.cpp:1369
#44 0x00007f9f1790c24e in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x55ed5679e158, e=0x7ffc6912a1c0) at /var/tmp/portage/dev-qt/qtwidgets-5.15.10-r1/work/qtbase-everywhere-src-5.15.10/src/widgets/kernel/qapplication.cpp:3640
#45 0x00007f9f16ce0e40 in QCoreApplication::notifyInternal2 (receiver=0x55ed5679e158, event=0x7ffc6912a1c0) at /var/tmp/portage/dev-qt/qtcore-5.15.10/work/qtbase-everywhere-src-5.15.10/src/corelib/kernel/qcoreapplication.cpp:1064
#46 0x00007f9f16ce102e in QCoreApplication::sendEvent (receiver=<optimized out>, event=<optimized out>) at /var/tmp/portage/dev-qt/qtcore-5.15.10/work/qtbase-everywhere-src-5.15.10/src/corelib/kernel/qcoreapplication.cpp:1462
#47 0x00007f9f16d40670 in QTimerInfoList::activateTimers (this=0x55ed55fe0320) at /var/tmp/portage/dev-qt/qtcore-5.15.10/work/qtbase-everywhere-src-5.15.10/src/corelib/kernel/qtimerinfo_unix.cpp:643
#48 0x00007f9f16d41304 in timerSourceDispatch (source=<optimized out>) at /var/tmp/portage/dev-qt/qtcore-5.15.10/work/qtbase-everywhere-src-5.15.10/src/corelib/kernel/qeventdispatcher_glib.cpp:183
#49 0x00007f9f14b31e8c in g_main_dispatch (context=0x7f9f0c000ee0) at ../glib-2.76.3/glib/gmain.c:3460
#50 g_main_context_dispatch (context=context@entry=0x7f9f0c000ee0) at ../glib-2.76.3/glib/gmain.c:4200
#51 0x00007f9f14b32128 in g_main_context_iterate (context=context@entry=0x7f9f0c000ee0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib-2.76.3/glib/gmain.c:4276
#52 0x00007f9f14b321bc in g_main_context_iteration (context=0x7f9f0c000ee0, may_block=1) at ../glib-2.76.3/glib/gmain.c:4343
#53 0x00007f9f16d415d6 in QEventDispatcherGlib::processEvents (this=0x55ed55feabc0, flags=...) at /var/tmp/portage/dev-qt/qtcore-5.15.10/work/qtbase-everywhere-src-5.15.10/src/corelib/kernel/qeventdispatcher_glib.cpp:423
#54 0x00007f9f16cdf32b in QEventLoop::exec (this=this@entry=0x7ffc6912a400, flags=..., flags@entry=...) at /var/tmp/portage/dev-qt/qtcore-5.15.10/work/qtbase-everywhere-src-5.15.10/include/QtCore/../../src/corelib/global/qflags.h:69
#55 0x00007f9f16ce8540 in QCoreApplication::exec () at /var/tmp/portage/dev-qt/qtcore-5.15.10/work/qtbase-everywhere-src-5.15.10/include/QtCore/../../src/corelib/global/qflags.h:121
#56 0x00007f9f1716169c in QGuiApplication::exec () at /var/tmp/portage/dev-qt/qtgui-5.15.10/work/qtbase-everywhere-src-5.15.10/src/gui/kernel/qguiapplication.cpp:1870
#57 0x00007f9f1790c1c5 in QApplication::exec () at /var/tmp/portage/dev-qt/qtwidgets-5.15.10-r1/work/qtbase-everywhere-src-5.15.10/src/widgets/kernel/qapplication.cpp:2832
#58 0x000055ed53e26c80 in main (argc=<optimized out>, argv=<optimized out>) at /var/tmp/portage/net-p2p/ktorrent-23.04.3/work/ktorrent-23.04.3/ktorrent/main.cpp:250
[Inferior 1 (process 15001) detached]

Reported using DrKonqi