r16059 - in /desktop/unstable/nautilus/debian: changelog patches/02_trash_location.patch patches/series
joss at users.alioth.debian.org
joss at users.alioth.debian.org
Wed May 28 00:09:07 UTC 2008
Author: joss
Date: Wed May 28 00:09:07 2008
New Revision: 16059
URL: http://svn.debian.org/wsvn/pkg-gnome/?sc=1&rev=16059
Log:
02_trash_location.patch: new patch. When unmounting a volume with a
non-empty trash, take into account that with the new location, the
directory to remove is the parent of the one returned by gnome-vfs.
Added:
desktop/unstable/nautilus/debian/patches/02_trash_location.patch
Modified:
desktop/unstable/nautilus/debian/changelog
desktop/unstable/nautilus/debian/patches/series
Modified: desktop/unstable/nautilus/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/unstable/nautilus/debian/changelog?rev=16059&op=diff
==============================================================================
--- desktop/unstable/nautilus/debian/changelog (original)
+++ desktop/unstable/nautilus/debian/changelog Wed May 28 00:09:07 2008
@@ -1,4 +1,4 @@
-nautilus (2.20.0-4) UNRELEASED; urgency=low
+nautilus (2.20.0-4) unstable; urgency=low
[ Loic Minier ]
* Add a nautilus-extensions-1.0 Provide to nautilus to express the fact that
@@ -8,8 +8,11 @@
[ Josselin Mouette ]
* Demote fam to a Suggests; only g-d-e really needs to recommend it.
-
- -- Josselin Mouette <joss at debian.org> Thu, 31 Jan 2008 15:45:04 +0100
+ * 02_trash_location.patch: new patch. When unmounting a volume with a
+ non-empty trash, take into account that with the new location, the
+ directory to remove is the parent of the one returned by gnome-vfs.
+
+ -- Josselin Mouette <joss at debian.org> Wed, 28 May 2008 01:47:28 +0200
nautilus (2.20.0-3) unstable; urgency=low
Added: desktop/unstable/nautilus/debian/patches/02_trash_location.patch
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/unstable/nautilus/debian/patches/02_trash_location.patch?rev=16059&op=file
==============================================================================
--- desktop/unstable/nautilus/debian/patches/02_trash_location.patch (added)
+++ desktop/unstable/nautilus/debian/patches/02_trash_location.patch Wed May 28 00:09:07 2008
@@ -1,0 +1,93 @@
+Index: nautilus-2.20.0/libnautilus-private/nautilus-file-operations.c
+===================================================================
+--- nautilus-2.20.0.orig/libnautilus-private/nautilus-file-operations.c 2008-05-28 01:37:07.149153104 +0200
++++ nautilus-2.20.0/libnautilus-private/nautilus-file-operations.c 2008-05-28 01:35:34.969151666 +0200
+@@ -3085,6 +3085,18 @@ prompt_empty_trash (GtkWidget *parent_vi
+ return result;
+ }
+
++static gchar*
++trash_directory_to_remove (const gchar *trash_uri_str)
++{
++ gchar *retval = g_strdup (trash_uri_str);
++ gchar *basename = strrchr (retval, '/');
++
++ if (basename && strcmp (basename+1, "files") == 0)
++ basename[0] = '\0';
++
++ return retval;
++}
++
+ void
+ nautilus_file_operations_unmount_volume (GtkWidget *parent_view,
+ GnomeVFSVolume *volume,
+@@ -3117,17 +3129,20 @@ nautilus_file_operations_unmount_volume
+ {
+ GList *trash_dir_list;
+ NautilusUnmountCallback *unmount_cb;
++ gchar *uri_to_remove;
+
+ trash_dir_list = NULL;
+ unmount_cb = g_new (NautilusUnmountCallback, 1);
+ unmount_cb->volume = gnome_vfs_volume_ref (volume);
+ unmount_cb->callback = callback;
+ unmount_cb->user_data = user_data;
+- trash_dir_list = g_list_append (trash_dir_list, trash_uri_str);
++ uri_to_remove = trash_directory_to_remove (trash_uri_str);
++ trash_dir_list = g_list_append (trash_dir_list, uri_to_remove);
+ nautilus_file_operations_delete (trash_dir_list, parent_view,
+ (NautilusDeleteCallback) delete_callback,
+ unmount_cb);
+ g_list_free (trash_dir_list);
++ g_free (uri_to_remove);
+ /* volume is unmounted in the callback */
+ break;
+ }
+@@ -3152,6 +3167,7 @@ nautilus_file_operations_unmount_drive (
+ GList *trash_dir_list;
+ GnomeVFSVolume *volume;
+ gchar *trash_uri_str;
++ gchar *uri_to_remove;
+ gboolean trash_is_empty;
+
+ g_return_if_fail (parent_view != NULL);
+@@ -3163,7 +3179,8 @@ nautilus_file_operations_unmount_drive (
+ volume = it->data;
+ trash_uri_str = get_trash_uri_for_volume (volume);
+ if (trash_uri_str) {
+- trash_dir_list = g_list_prepend (trash_dir_list, trash_uri_str);
++ uri_to_remove = trash_directory_to_remove (trash_uri_str);
++ trash_dir_list = g_list_prepend (trash_dir_list, uri_to_remove);
+ /* Check if any of the volumes have trash on them.
+ * If the trash directories on the volumes exist they are monitored
+ * by the trash monitor so this should give accurate results. */
+@@ -3172,6 +3189,7 @@ nautilus_file_operations_unmount_drive (
+ trash_dir = nautilus_directory_get (trash_uri_str);
+ trash_is_empty = ! nautilus_directory_is_not_empty (trash_dir);
+ }
++ g_free (trash_uri_str);
+ }
+ gnome_vfs_volume_unref (volume);
+ }
+@@ -3195,18 +3213,16 @@ nautilus_file_operations_unmount_drive (
+ (NautilusDeleteCallback) delete_callback,
+ unmount_cb);
+
+- for (it = trash_dir_list; it != NULL; it = g_list_next (it)) {
+- temp = it->data;
+- g_free (temp);
+- }
++ g_list_foreach (trash_dir_list, (GFunc)g_free, NULL);
+ g_list_free (trash_dir_list);
+ /* volume is unmounted in the callback */
+ break;
+ }
+ case GTK_RESPONSE_REJECT:
+ gnome_vfs_drive_unmount (drive, callback, user_data);
+- break;
+ default:
++ g_list_foreach (trash_dir_list, (GFunc)g_free, NULL);
++ g_list_free (trash_dir_list);
+ break;
+ }
+ }
Modified: desktop/unstable/nautilus/debian/patches/series
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/unstable/nautilus/debian/patches/series?rev=16059&op=diff
==============================================================================
--- desktop/unstable/nautilus/debian/patches/series (original)
+++ desktop/unstable/nautilus/debian/patches/series Wed May 28 00:09:07 2008
@@ -1,4 +1,5 @@
01_prompt_same_file.patch
+02_trash_location.patch
03_sftp_connect.patch
04_show_backup_files.patch
05_places-sidebar_single-click.patch
More information about the pkg-gnome-commits
mailing list