https://bugs.kde.org/show_bug.cgi?id=371473
Bug ID: 371473 Summary: indefinite loop in function Konversation::DCC::TransferRecv::createDirs 396 KIO Job exec Product: konversation Version: 1.6 Platform: Other OS: Linux Status: UNCONFIRMED Severity: crash Priority: NOR Component: dcc Assignee: b.buschin...@googlemail.com Reporter: zh...@outlook.com CC: konversation-de...@kde.org There are 5 DCC downloading jobs running. Then I request another one, which can not be established. Then the loop occure. Backtrace 1: #0 0x00007f9c875618ce in QWindowSystemInterfacePrivate::getNonUserInputWindowSystemEvent() () from /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5 #1 0x00007f9c87561b85 in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5 #2 0x00007f9c7a05cd60 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5XcbQpa.so.5 #3 0x00007f9c82e257d7 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #4 0x00007f9c82e25a40 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #5 0x00007f9c82e25aec in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #6 0x00007f9c871fa4ff in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #7 0x00007f9c871a219a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #8 0x00007f9c88a3f24e in KJob::exec() () from /usr/lib/x86_64-linux-gnu/libKF5CoreAddons.so.5 #9 0x0000000000657e54 in Konversation::DCC::TransferRecv::createDirs (this=this@entry=0x251f940, dirURL=...) at ./src/dcc/transferrecv.cpp:396 #10 0x00000000006582b9 in Konversation::DCC::TransferRecv::prepareLocalKio (this=this@entry=0x251f940, overwrite=overwrite@entry=false, resume=resume@entry=false, startPosition=startPosition@entry=0) at ./src/dcc/transferrecv.cpp:311 #11 0x0000000000658a0f in Konversation::DCC::TransferRecv::start (this=0x251f940) at ./src/dcc/transferrecv.cpp:296 #12 0x000000000054115d in Server::addDccGet (this=0x2143040, sourceNick=..., dccArguments=...) at ./src/irc/server.cpp:2249 #13 0x000000000069ebf7 in Server::qt_static_metacall (_o=0x2143040, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at ./obj-x86_64-linux-gnu/src/moc_server.cpp:759 #14 0x00007f9c871d2729 in QObject::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #15 0x00007f9c87b6bbec in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5 #16 0x00007f9c87b7108f in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5 #17 0x00007f9c871a4450 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #18 0x00007f9c871a63cc in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #19 0x00007f9c871fa0f3 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #20 0x00007f9c82e257d7 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #21 0x00007f9c82e25a40 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #22 0x00007f9c82e25aec in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 Backtrace2: #0 0x00007f9c865db56d in poll () at ../sysdeps/unix/syscall-template.S:84 #1 0x00007f9c82e259d6 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #2 0x00007f9c82e25aec in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #3 0x00007f9c871fa4ff in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #4 0x00007f9c871a219a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #5 0x00007f9c88a3f24e in KJob::exec() () from /usr/lib/x86_64-linux-gnu/libKF5CoreAddons.so.5 #6 0x0000000000657e54 in Konversation::DCC::TransferRecv::createDirs (this=this@entry=0x251f940, dirURL=...) at ./src/dcc/transferrecv.cpp:396 #7 0x00000000006582b9 in Konversation::DCC::TransferRecv::prepareLocalKio (this=this@entry=0x251f940, overwrite=overwrite@entry=false, resume=resume@entry=false, startPosition=startPosition@entry=0) at ./src/dcc/transferrecv.cpp:311 #8 0x0000000000658a0f in Konversation::DCC::TransferRecv::start (this=0x251f940) at ./src/dcc/transferrecv.cpp:296 #9 0x000000000054115d in Server::addDccGet (this=0x2143040, sourceNick=..., dccArguments=...) at ./src/irc/server.cpp:2249 #10 0x000000000069ebf7 in Server::qt_static_metacall (_o=0x2143040, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at ./obj-x86_64-linux-gnu/src/moc_server.cpp:759 #11 0x00007f9c871d2729 in QObject::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #12 0x00007f9c87b6bbec in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5 #13 0x00007f9c87b7108f in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5 #14 0x00007f9c871a4450 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #15 0x00007f9c871a63cc in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #16 0x00007f9c871fa0f3 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #17 0x00007f9c82e257d7 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #18 0x00007f9c82e25a40 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #19 0x00007f9c82e25aec in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #20 0x00007f9c871fa4ff in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #21 0x00007f9c871a219a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #22 0x00007f9c88a3f24e in KJob::exec() () from /usr/lib/x86_64-linux-gnu/libKF5CoreAddons.so.5 Reproducible: Always Steps to Reproduce: It's not easy to reproduce, but it had happened many times, if there are many ongoing downloads, and the new one can not be established. Actual Results: 100% loop. There are some notification about "/home" or "/home/user" directories. Sometimes the loop will run into an end, sometimes not. It seems there not any need to call KIO stats, a plain libs stat() call is enough. -- You are receiving this mail because: You are watching all bug changes.