summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Larsson <alexl@redhat.com>2008-03-28 09:34:11 +0000
committerAlexander Larsson <alexl@src.gnome.org>2008-03-28 09:34:11 +0000
commit77b03cc7ecdc3dc3d68badc72a66b3e2651430d8 (patch)
tree4d9752d8e537877d703209d0ea23cb36fb2638de
parentb2db9fa6cc81986eed8801d8c0f14dbe472d3b86 (diff)
downloadnautilus-77b03cc7ecdc3dc3d68badc72a66b3e2651430d8.tar.gz
Actually handle the move-file-over-directory case.
2008-03-28 Alexander Larsson <alexl@redhat.com> * libnautilus-private/nautilus-file-operations.c: (move_file_prepare): Actually handle the move-file-over-directory case. svn path=/trunk/; revision=13985
-rw-r--r--ChangeLog6
-rw-r--r--libnautilus-private/nautilus-file-operations.c15
2 files changed, 21 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index a3fc51a49..9789758ba 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2008-03-28 Alexander Larsson <alexl@redhat.com>
+
+ * libnautilus-private/nautilus-file-operations.c:
+ (move_file_prepare):
+ Actually handle the move-file-over-directory case.
+
2008-03-26 Alexander Larsson <alexl@redhat.com>
* libnautilus-private/nautilus-monitor.c:
diff --git a/libnautilus-private/nautilus-file-operations.c b/libnautilus-private/nautilus-file-operations.c
index 46d611ae5..996a1aafb 100644
--- a/libnautilus-private/nautilus-file-operations.c
+++ b/libnautilus-private/nautilus-file-operations.c
@@ -3835,12 +3835,27 @@ move_file_prepare (CopyMoveJob *move_job,
error = NULL;
}
+ /* TODO: Handle delete dest */
+
*copy_files = g_list_prepend (*copy_files, src);
if (position) {
g_array_append_val (copy_positions, *position);
}
}
+ else if (overwrite &&
+ IS_IO_ERROR (error, IS_DIRECTORY)) {
+
+ g_error_free (error);
+
+ /* TODO delete_dest is TRUE here */
+
+ *copy_files = g_list_prepend (*copy_files, src);
+ if (position) {
+ g_array_append_val (copy_positions, *position);
+ }
+ }
+
else if (IS_IO_ERROR (error, CANCELLED)) {
g_error_free (error);
}