Bug 375092 - Crash when canceling confirmation to overwrite a file.
Summary: Crash when canceling confirmation to overwrite a file.
Status: RESOLVED FIXED
Alias: None
Product: krusader
Classification: Applications
Component: general (show other bugs)
Version: 2.7.2
Platform: Ubuntu Linux
: NOR crash
Target Milestone: ---
Assignee: Krusader Bugs Distribution List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-01-15 15:07 UTC by Marco Rossi
Modified: 2024-12-06 16:31 UTC (History)
5 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments
Video demonstrating the crash (3.33 MB, video/mp4)
2022-01-17 18:48 UTC, Andreas Nicolai
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Marco Rossi 2017-01-15 15:07:08 UTC
I copied a directory from ubuntu 14.04 to ubuntu 16.04 through samba. Then I wanted to delete it, but accidentally hit F6 so Krusader asked if I want to overwrite the files. And when I hit cancel, Krusader crashed. Krusader crashes every time I do this, but only if I try to move the files.
The crash reporting assistant said "The generated crash information is not useful"
The crash happened on ubuntu 16.04.
Comment 1 Alex Bikadorov 2017-01-15 20:44:02 UTC
Please test with version 2.5.0
Comment 2 Andreas Nicolai 2021-11-09 07:16:15 UTC
Crash confirmed with Version 2.7.2 on Ubuntu 20.04.3 LTS.

Steps to reproduce:

- on left window select several files, some of which exist in target directory in right side
- press F5 for copy
- the file exists dialog opens, shortly afterwards the copy progress "Kopiervorgang" dialog opens
- press "cancel" in the copy progress dialog -> Krusader crashes
Comment 3 Davide Gianforte 2021-12-19 19:35:30 UTC
Hi, do you have a backtrace of the crash?
Comment 4 Andreas Nicolai 2022-01-01 20:35:44 UTC
GNU gdb (Ubuntu 9.2-0ubuntu1~20.04) 9.2
Copyright (C) 2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.

For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from krusader...
(No debugging symbols found in krusader)
(gdb) r
Starting program: /usr/bin/krusader 
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
QCoreApplication::applicationDirPath: Please instantiate the QApplication object first
[New Thread 0x7ffff1389700 (LWP 79844)]
[New Thread 0x7fffeb746700 (LWP 79845)]
[New Thread 0x7fffeaf45700 (LWP 79846)]
[New Thread 0x7fffea4cd700 (LWP 79848)]
21:34:05.059-debug default unknown@0 # System icon theme: "kf5_rcc_theme"
21:34:05.145-warning default unknown@0 # QWidget::insertAction: Attempt to insert null action
21:34:05.146-warning default unknown@0 # QWidget::insertAction: Attempt to insert null action
21:34:05.160-warning kf5.ki18n unknown@0 # Trying to convert empty KLocalizedString to QString.
21:34:14.585-critical default unknown@0 # Couldn't start kuiserver from org.kde.kuiserver.service: QDBusError("org.freedesktop.DBus.Error.ServiceUnknown", "The name org.kde.kuiserver was not provided by any .service files")
21:34:17.365-warning default unknown@0 # ""

Thread 1 "krusader" received signal SIGSEGV, Segmentation fault.
0x00005555557c1e2a in ?? ()
(gdb) where
#0  0x00005555557c1e2a in ?? ()
#1  0x00007ffff61b5458 in QMetaObject::activate(QObject*, int, int, void**) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#2  0x00005555557bda76 in ?? ()
#3  0x00005555557c34dd in ?? ()
#4  0x00007ffff61b5458 in QMetaObject::activate(QObject*, int, int, void**) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007ffff7332b0d in KJob::finished(KJob*, KJob::QPrivateSignal) () from /lib/x86_64-linux-gnu/libKF5CoreAddons.so.5
#6  0x00007ffff7333740 in KJob::finishJob(bool) () from /lib/x86_64-linux-gnu/libKF5CoreAddons.so.5
#7  0x00007ffff76057ca in KIO::CopyJob::emitResult() () from /lib/x86_64-linux-gnu/libKF5KIOCore.so.5
#8  0x00007ffff7610402 in ?? () from /lib/x86_64-linux-gnu/libKF5KIOCore.so.5
#9  0x00007ffff76126eb in KIO::CopyJob::slotResult(KJob*) () from /lib/x86_64-linux-gnu/libKF5KIOCore.so.5
#10 0x00007ffff61b5458 in QMetaObject::activate(QObject*, int, int, void**) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#11 0x00007ffff7332c60 in KJob::result(KJob*, KJob::QPrivateSignal) () from /lib/x86_64-linux-gnu/libKF5CoreAddons.so.5
#12 0x00007ffff733376b in KJob::finishJob(bool) () from /lib/x86_64-linux-gnu/libKF5CoreAddons.so.5
#13 0x00007ffff767eaf8 in KIO::SimpleJob::slotFinished() () from /lib/x86_64-linux-gnu/libKF5KIOCore.so.5
#14 0x00007ffff76838ee in KIO::StatJob::slotFinished() () from /lib/x86_64-linux-gnu/libKF5KIOCore.so.5
#15 0x00007ffff61b5458 in QMetaObject::activate(QObject*, int, int, void**) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#16 0x00007ffff764f252 in KIO::SlaveInterface::dispatch(int, QByteArray const&) () from /lib/x86_64-linux-gnu/libKF5KIOCore.so.5
#17 0x00007ffff764cf4f in KIO::SlaveInterface::dispatch() () from /lib/x86_64-linux-gnu/libKF5KIOCore.so.5
#18 0x00007ffff7656152 in KIO::Slave::gotInput() () from /lib/x86_64-linux-gnu/libKF5KIOCore.so.5
#19 0x00007ffff61b5458 in QMetaObject::activate(QObject*, int, int, void**) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#20 0x00007ffff61b5d5a in QObject::event(QEvent*) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#21 0x00007ffff6bbea66 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#22 0x00007ffff6bc80f0 in QApplication::notify(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#23 0x00007ffff618993a in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#24 0x00007ffff618c5b8 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#25 0x00007ffff61e1f67 in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#26 0x00007ffff4ac817d in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#27 0x00007ffff4ac8400 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#28 0x00007ffff4ac84a3 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#29 0x00007ffff61e1565 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#30 0x00007ffff61884db in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#31 0x00007ffff6190246 in QCoreApplication::exec() () from /lib/x86_64-linux-gnu/libQt5Core.so.5
#32 0x00005555555efc70 in ?? ()
#33 0x00007ffff5a070b3 in __libc_start_main (main=0x5555555ec5c0, argc=1, argv=0x7fffffffdeb8, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffffffdea8) at ../csu/libc-start.c:308
#34 0x00005555555f196e in _start ()
Comment 5 Andreas Nicolai 2022-01-01 20:38:21 UTC
looks like the progress dialog is being terminated and the widget destroyed (maybe the respective WINDOW flag is set?), and the original copy dialog tries to access the now dangling pointer - either explicitely, or via signal-slot connection.
Comment 6 Toni Asensi Esteve 2022-01-08 18:20:37 UTC
> Crash confirmed with Version 2.7.2 on Ubuntu 20.04.3 LTS.
Note: I can't reproduce it using the git version of Krusader on Kubuntu 20.04.3 LTS.
Comment 7 Andreas Nicolai 2022-01-17 14:32:40 UTC
> Note: I can't reproduce it using the git version of Krusader on Kubuntu 20.04.3 LTS.

Release or Debug build? Maybe a timing issue... 

I'll install Kubuntu in a virtual machine and check if the crash disappears there.
Comment 8 Andreas Nicolai 2022-01-17 18:42:01 UTC
Crash confirmed on Kubuntu 20.04.3 LTS (fresh install in VirtualBox)

I'll create a small screencast to show the crash.
Comment 9 Andreas Nicolai 2022-01-17 18:48:42 UTC
Created attachment 145591 [details]
Video demonstrating the crash
Comment 10 Alex Bikadorov 2024-12-05 15:15:18 UTC
Thanks for the video. 

I cannot reproduce this anymore in current master and with Plasma 6. Can I close this crash report?
Comment 11 Andreas Nicolai 2024-12-06 16:31:32 UTC
Hi, 

works in version 2.7.2, Ubuntu 22.04.

Thanks for fixing!
-Andreas