diff options
author | Christian Neumair <cneumair@gnome.org> | 2008-03-31 16:48:50 +0000 |
---|---|---|
committer | Christian Neumair <cneumair@src.gnome.org> | 2008-03-31 16:48:50 +0000 |
commit | e33fa75fa41f295ab24a2e981c23c31adb0a918c (patch) | |
tree | 1eca8b4df067b96f33583cc46469e8ae4cf3da3c | |
parent | f7f5e4e73cc3beb84884967b07d0b118398df42f (diff) | |
download | nautilus-e33fa75fa41f295ab24a2e981c23c31adb0a918c.tar.gz |
Do not automount mount points inside hidden hierarchies (#524075).
2008-03-31 Christian Neumair <cneumair@gnome.org>
* libnautilus-private/nautilus-autorun.c
(should_skip_native_mount_root), (should_autorun_mount):
Do not automount mount points inside hidden hierarchies (#524075).
svn path=/branches/gnome-2-22/; revision=14014
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | libnautilus-private/nautilus-autorun.c | 16 |
2 files changed, 21 insertions, 1 deletions
@@ -1,3 +1,9 @@ +2008-03-31 Christian Neumair <cneumair@gnome.org> + + * libnautilus-private/nautilus-autorun.c + (should_skip_native_mount_root), (should_autorun_mount): + Do not automount mount points inside hidden hierarchies (#524075). + 2008-03-30 Christian Neumair <cneumair@gnome.org> * src/file-manager/fm-properties-window.c diff --git a/libnautilus-private/nautilus-autorun.c b/libnautilus-private/nautilus-autorun.c index 1bfb9353a..33b43c336 100644 --- a/libnautilus-private/nautilus-autorun.c +++ b/libnautilus-private/nautilus-autorun.c @@ -1396,6 +1396,20 @@ nautilus_inhibit_autorun_for_volume (GVolume *volume) } static gboolean +should_skip_native_mount_root (GFile *root) +{ + char *path; + gboolean should_skip; + + /* skip any mounts in hidden directory hierarchies */ + path = g_file_get_path (root); + should_skip = strstr (path, "/.") != NULL; + g_free (path); + + return should_skip; +} + +static gboolean should_autorun_mount (GMount *mount) { GFile *root, *file; @@ -1435,7 +1449,7 @@ should_autorun_mount (GMount *mount) /* only do autorun on local files or files where g_volume_should_automount() returns TRUE */ ignore_autorun = TRUE; - if (g_file_is_native (root) || + if ((g_file_is_native (root) && !should_skip_native_mount_root (root)) || (enclosing_volume != NULL && g_volume_should_automount (enclosing_volume))) { ignore_autorun = FALSE; } |