[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#928438: marked as done (unblock: libfm-qt/0.14.1-8)



Your message dated Sun, 05 May 2019 13:27:13 +0000
with message-id <E1hNHAf-0005zS-7w@respighi.debian.org>
and subject line unblock libfm-qt
has caused the Debian Bug report #928438,
regarding unblock: libfm-qt/0.14.1-8
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
928438: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=928438
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: unblock

Please unblock package libfm-qt

Problem: Recursive moving of folders is prohibited in some cases
New version fixes #927708 which renders pcmanfm-qt nearly unusable for basic tasks in file management.
Solution was to port back the upstream fix.


diff --git a/debian/changelog b/debian/changelog
index e5012f5..9bc9b25 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,15 @@
+libfm-qt (0.14.1-8) unstable; urgency=medium
+
+  * Removed the wrongly introduced build dependency on lxqt-qtplugin
+
+ -- Alf Gaida <agaida@siduction.org>  Sat, 27 Apr 2019 18:40:25 +0200
+
+libfm-qt (0.14.1-7) unstable; urgency=medium
+
+  * Workaround for GLib's recursive moving error (Closes: #927708)
+
+ -- Alf Gaida <agaida@siduction.org>  Sat, 27 Apr 2019 10:50:16 +0200
+
 libfm-qt (0.14.1-6) unstable; urgency=medium
 
   * Fixed ignored creation-deletion sequences (Closes: #927707)
diff --git a/debian/patches/series b/debian/patches/series
index 3a2195c..1a4dd71 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,3 +1,4 @@
 fix-smb-recursive-copy.patch
 fix-license-headers.patch
 dont-ignore-crea-del-sequences.patch
+workaround-glib-recursive-moving-error.patch
diff --git a/debian/patches/workaround-glib-recursive-moving-error.patch b/debian/patches/workaround-glib-recursive-moving-error.patch
new file mode 100644
index 0000000..838ff29
--- /dev/null
+++ b/debian/patches/workaround-glib-recursive-moving-error.patch
@@ -0,0 +1,33 @@
+From 476dded99de11a57c64103b4610f0de3dbdbc769 Mon Sep 17 00:00:00 2001
+From: Tsu Jan <tsujan2000@gmail.com>
+Date: Mon, 22 Apr 2019 00:07:07 +0430
+Subject: [PATCH] Workaround for GLib's recursive moving error, e.g. with bound
+ mounts
+
+`g_file_move()` may not work recursively on the same filesystem, especially
+with bound mounts (to `/mnt`, for example) and give the `G_IO_ERROR_WOULD_RECURSE`
+error. This patch ignores the error and tries our `FileTransferJob::copyFile()`.
+
+Closes https://github.com/lxqt/pcmanfm-qt/issues/943
+---
+ src/core/filetransferjob.cpp | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/src/core/filetransferjob.cpp b/src/core/filetransferjob.cpp
+index c3d5851..32f0f89 100644
+--- a/src/core/filetransferjob.cpp
++++ b/src/core/filetransferjob.cpp
+@@ -83,6 +83,13 @@ bool FileTransferJob::moveFileSameFs(const FilePath& srcPath, const GFileInfoPtr
+         // do the file operation
+         if(!g_file_move(srcPath.gfile().get(), destPath.gfile().get(), GFileCopyFlags(flags), cancellable().get(),
+                        nullptr, this, &err)) {
++            // Specially with mounts bound to /mnt, g_file_move() may give the recursive error
++            // and fail, in which case, we ignore the error and try copying and deleting.
++            if(err.code() == G_IO_ERROR_WOULD_RECURSE) {
++              if(auto parent = destPath.parent()) {
++                  return copyFile(srcPath, srcInfo, parent, destPath.baseName().get());
++              }
++            }
+             retry = handleError(err, srcPath, srcInfo, destPath, flags);
+         }
+         else {


unblock libfm-qt/0.14.1-8

-- System Information:
Debian Release: 10.0
  APT prefers unstable-debug
  APT policy: (500, 'unstable-debug'), (500, 'testing-debug'), (500, 'buildd-unstable'), (500, 'unstable'), (500, 'testing'), (500, 'stable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 5.0.11-towo.2-siduction-amd64 (SMP w/8 CPU cores; PREEMPT)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_OOT_MODULE
Locale: LANG=de_DE.utf8, LC_CTYPE=de_DE.utf8 (charmap=UTF-8), LANGUAGE= (charmap=UTF-8)
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)

--- End Message ---
--- Begin Message ---
Unblocked libfm-qt.

--- End Message ---

Reply to: