summaryrefslogtreecommitdiff
path: root/daemon/gvfsbackendobexftp.c
diff options
context:
space:
mode:
authorChristian Kellner <gicmo@gnome.org>2009-10-16 13:03:23 +0200
committerChristian Kellner <gicmo@gnome.org>2009-10-16 13:03:23 +0200
commit854db908aaad2690d56ae2dfd061207c5a6215ee (patch)
treea6d394882d6654774058fe5029afdf9714ac8466 /daemon/gvfsbackendobexftp.c
parent67069c464a2cb827a2afe2b7886e79707c7149e2 (diff)
downloadgvfs-854db908aaad2690d56ae2dfd061207c5a6215ee.tar.gz
Bug 598660 - Must honor the remove_source switch
Diffstat (limited to 'daemon/gvfsbackendobexftp.c')
-rw-r--r--daemon/gvfsbackendobexftp.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/daemon/gvfsbackendobexftp.c b/daemon/gvfsbackendobexftp.c
index 84969dbd..eb1b43b9 100644
--- a/daemon/gvfsbackendobexftp.c
+++ b/daemon/gvfsbackendobexftp.c
@@ -1826,7 +1826,18 @@ do_push (GVfsBackend *backend,
*/
_invalidate_cache_helper (op_backend);
- g_vfs_job_succeeded (G_VFS_JOB (job));
+ if (remove_source && g_unlink (local_path) == -1)
+ {
+ int errsv = errno;
+
+ g_vfs_job_failed (G_VFS_JOB (job),
+ G_IO_ERROR,
+ g_io_error_from_errno (errsv),
+ _("Error deleting file: %s"),
+ g_strerror (errsv));
+ }
+ else
+ g_vfs_job_succeeded (G_VFS_JOB (job));
op_backend->doing_io = FALSE;
g_mutex_unlock (op_backend->mutex);