summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoss Lagerwall <rosslagerwall@gmail.com>2014-09-28 09:32:43 +0100
committerRoss Lagerwall <rosslagerwall@gmail.com>2014-10-17 20:39:19 +0100
commit0077603d193ddd8c3c6f2d7f9053808b0ff1f944 (patch)
tree1c817be656209b653428956c38952411a7e4d134
parent2e765449decfd7ec7668fbba92e6256f19ebdbfd (diff)
downloadgvfs-0077603d193ddd8c3c6f2d7f9053808b0ff1f944.tar.gz
gvfs-move: Allow specifying G_FILE_COPY_NO_FALLBACK_FOR_MOVE
Allow specifying G_FILE_COPY_NO_FALLBACK_FOR_MOVE when moving by passing "-C" to gvfs-move. https://bugzilla.gnome.org/show_bug.cgi?id=737510
-rw-r--r--man/gvfs-move.xml6
-rw-r--r--programs/gvfs-move.c4
2 files changed, 10 insertions, 0 deletions
diff --git a/man/gvfs-move.xml b/man/gvfs-move.xml
index 54a1dd45..07aa2343 100644
--- a/man/gvfs-move.xml
+++ b/man/gvfs-move.xml
@@ -93,6 +93,12 @@
<listitem><para>Backup existing destination files.</para></listitem>
</varlistentry>
+
+ <varlistentry>
+ <term><option>-C</option>, <option>--no-copy-fallback</option></term>
+
+ <listitem><para>Don't use copy and delete fallback.</para></listitem>
+ </varlistentry>
</variablelist>
</refsect1>
diff --git a/programs/gvfs-move.c b/programs/gvfs-move.c
index 4d026128..ceea162a 100644
--- a/programs/gvfs-move.c
+++ b/programs/gvfs-move.c
@@ -36,6 +36,7 @@ static gboolean progress = FALSE;
static gboolean interactive = FALSE;
static gboolean backup = FALSE;
static gboolean no_target_directory = FALSE;
+static gboolean no_copy_fallback = FALSE;
static gboolean show_version = FALSE;
static GOptionEntry entries[] =
@@ -44,6 +45,7 @@ static GOptionEntry entries[] =
{ "progress", 'p', 0, G_OPTION_ARG_NONE, &progress, N_("Show progress"), NULL },
{ "interactive", 'i', 0, G_OPTION_ARG_NONE, &interactive, N_("Prompt before overwrite"), NULL },
{ "backup", 'b', 0, G_OPTION_ARG_NONE, &backup, N_("Backup existing destination files"), NULL },
+ { "no-copy-fallback", 'C', 0, G_OPTION_ARG_NONE, &no_copy_fallback, N_("Don't use copy and delete fallback"), NULL },
{ "version", 0, 0, G_OPTION_ARG_NONE, &show_version, N_("Show program version"), NULL },
{ NULL }
};
@@ -197,6 +199,8 @@ main (int argc, char *argv[])
flags |= G_FILE_COPY_BACKUP;
if (!interactive)
flags |= G_FILE_COPY_OVERWRITE;
+ if (no_copy_fallback)
+ flags |= G_FILE_COPY_NO_FALLBACK_FOR_MOVE;
error = NULL;
start_time = g_get_monotonic_time ();