summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'kde-frameworks/kio/files/kio-5.78.0-copyjob-crash.patch')
-rw-r--r--kde-frameworks/kio/files/kio-5.78.0-copyjob-crash.patch32
1 files changed, 32 insertions, 0 deletions
diff --git a/kde-frameworks/kio/files/kio-5.78.0-copyjob-crash.patch b/kde-frameworks/kio/files/kio-5.78.0-copyjob-crash.patch
new file mode 100644
index 000000000000..a4b87821e203
--- /dev/null
+++ b/kde-frameworks/kio/files/kio-5.78.0-copyjob-crash.patch
@@ -0,0 +1,32 @@
+From a183dd0d1ee0659e5341c7cb4117df27edd6f125 Mon Sep 17 00:00:00 2001
+From: Ahmad Samir <a.samirh78@gmail.com>
+Date: Tue, 2 Feb 2021 11:31:40 +0200
+Subject: [PATCH] CopyJob: fix crash with skip/retry
+
+The crash was happening because I was disconnecting the wrong signal in
+the lambda connected to KIO::AskUserActionInterface::askUserSkipResult...
+
+BUG: 431731
+FIXED-IN: 5.79
+---
+ src/core/copyjob.cpp | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/core/copyjob.cpp b/src/core/copyjob.cpp
+index cee40a62..cb16010f 100644
+--- a/src/core/copyjob.cpp
++++ b/src/core/copyjob.cpp
+@@ -1578,8 +1578,8 @@ void CopyJobPrivate::slotResultErrorCopyingFiles(KJob *job)
+ QObject::connect(askUserActionInterface, &KIO::AskUserActionInterface::askUserSkipResult,
+ q, [=](SkipDialog_Result result, KJob *parentJob) {
+ Q_ASSERT(parentJob == q);
+- // Only receive askUserRenameResult once per rename dialog
+- QObject::disconnect(askUserActionInterface, &KIO::AskUserActionInterface::askUserRenameResult,
++ // Only receive askUserSkipResult once per skip dialog
++ QObject::disconnect(askUserActionInterface, &KIO::AskUserActionInterface::askUserSkipResult,
+ q, nullptr);
+ processFileRenameDialogResult(it, result, QUrl() /* no new url in skip */, QDateTime{});
+ });
+--
+GitLab
+