[gnome-commander] When doing a overwrite copy, respect the other current copy flags
- From: Uwe Scholz <uwescholz src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-commander] When doing a overwrite copy, respect the other current copy flags
- Date: Tue, 14 Sep 2021 20:09:41 +0000 (UTC)
commit 01b429a3d5cded3858db8cb174ff3db20f02804c
Author: Uwe Scholz <u scholz83 gmx de>
Date: Tue Sep 14 21:06:18 2021 +0200
When doing a overwrite copy, respect the other current copy flags
src/gnome-cmd-xfer.cc | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
---
diff --git a/src/gnome-cmd-xfer.cc b/src/gnome-cmd-xfer.cc
index 9c5bb8fc..5b03187b 100644
--- a/src/gnome-cmd-xfer.cc
+++ b/src/gnome-cmd-xfer.cc
@@ -1343,6 +1343,7 @@ gnome_cmd_copy_gfile_recursive (GFile *srcGFile,
auto targetPath = g_strdup_printf("%s%s%s", g_file_peek_path(destGFile),
G_DIR_SEPARATOR_S, fileNameChildGFile);
auto targetGFile = g_file_new_for_path(targetPath);
do_the_copy(srcChildGFile, targetGFile, copyFlags, xferDataPointer);
+ guint copyFlagsTemp = copyFlags;
switch (xferData->problem_action)
{
case COPY_ERROR_ACTION_RETRY:
@@ -1350,7 +1351,8 @@ gnome_cmd_copy_gfile_recursive (GFile *srcGFile,
return gnome_cmd_copy_gfile_recursive(srcChildGFile, targetGFile, copyFlags,
xferData);
case COPY_ERROR_ACTION_REPLACE:
xferData->problem_action = COPY_ERROR_ACTION_NO_ACTION_YET;
- gnome_cmd_copy_gfile_recursive(srcChildGFile, targetGFile,
G_FILE_COPY_OVERWRITE, xferData);
+ copyFlagsTemp = copyFlags | G_FILE_COPY_OVERWRITE;
+ gnome_cmd_copy_gfile_recursive(srcChildGFile, targetGFile, (GFileCopyFlags)
copyFlagsTemp, xferData);
break;
case COPY_ERROR_ACTION_RENAME:
xferData->problem_action = COPY_ERROR_ACTION_NO_ACTION_YET;
@@ -1361,7 +1363,8 @@ gnome_cmd_copy_gfile_recursive (GFile *srcGFile,
xferData->problem_action = COPY_ERROR_ACTION_NO_ACTION_YET;
break;
case COPY_ERROR_ACTION_REPLACE_ALL:
- gnome_cmd_copy_gfile_recursive(srcChildGFile, targetGFile,
G_FILE_COPY_OVERWRITE, xferData);
+ copyFlagsTemp = copyFlags | G_FILE_COPY_OVERWRITE;
+ gnome_cmd_copy_gfile_recursive(srcChildGFile, targetGFile, (GFileCopyFlags)
copyFlagsTemp, xferData);
break;
case COPY_ERROR_ACTION_SKIP_ALL:
g_object_unref(srcChildGFile);
@@ -1372,7 +1375,7 @@ gnome_cmd_copy_gfile_recursive (GFile *srcGFile,
return true;
case COPY_ERROR_ACTION_RENAME_ALL:
set_new_nonexisting_dest_gfile(srcChildGFile, &targetGFile, xferData);
- gnome_cmd_copy_gfile_recursive(srcChildGFile, targetGFile,
G_FILE_COPY_OVERWRITE, xferData);
+ gnome_cmd_copy_gfile_recursive(srcChildGFile, targetGFile, copyFlags, xferData);
break;
case COPY_ERROR_ACTION_ABORT:
case COPY_ERROR_ACTION_COPY_INTO:
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]