rpms/nautilus/devel nautilus-2.22-fix-autorun.patch, NONE, 1.1 nautilus.spec, 1.197, 1.198 nautilus-2.22.2-hide-livecd-mount.diff, 1.1, NONE

David Zeuthen (davidz) fedora-extras-commits at redhat.com
Wed Apr 16 06:44:38 UTC 2008


Author: davidz

Update of /cvs/pkgs/rpms/nautilus/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv20661

Modified Files:
	nautilus.spec 
Added Files:
	nautilus-2.22-fix-autorun.patch 
Removed Files:
	nautilus-2.22.2-hide-livecd-mount.diff 
Log Message:
* Wed Apr 16 2008 David Zeuthen <davidz at redhat.com> - 2.22.2-3
- Revert Fedora livecd mount (fix is in latest gvfs packages) and
  add a patch to avoid trying to autorun mounts that are mounted
  from outside Nautilus (#442189)



nautilus-2.22-fix-autorun.patch:

--- NEW FILE nautilus-2.22-fix-autorun.patch ---
Index: src/nautilus-application.c
===================================================================
--- src/nautilus-application.c	(revision 14073)
+++ src/nautilus-application.c	(working copy)
@@ -171,9 +171,7 @@
 			 GAsyncResult *res,
 			 gpointer user_data)
 {
-	if (g_volume_mount_finish (G_VOLUME (source_object), res, NULL)) {
-		nautilus_inhibit_autorun_for_volume (G_VOLUME (source_object));
-	}
+	g_volume_mount_finish (G_VOLUME (source_object), res, NULL);
 }
 
 static void
@@ -1344,7 +1342,7 @@
 	if (eel_preferences_get_boolean (NAUTILUS_PREFERENCES_MEDIA_AUTOMOUNT) &&
 	    g_volume_should_automount (volume) &&
 	    g_volume_can_mount (volume)) {
-		nautilus_file_operations_mount_volume (NULL, volume, FALSE);
+		nautilus_file_operations_mount_volume (NULL, volume, TRUE);
 	}
 }
 
Index: src/nautilus-window-manage-views.c
===================================================================
--- src/nautilus-window-manage-views.c	(revision 14073)
+++ src/nautilus-window-manage-views.c	(working copy)
@@ -913,7 +913,6 @@
 		window->details->mount_error = NULL;
 		g_error_free (error);
 	} else {
-		nautilus_inhibit_autorun_for_file (G_FILE (source_object));
 		nautilus_file_invalidate_all_attributes (window->details->determine_view_file);
 		nautilus_file_call_when_ready (window->details->determine_view_file,
 					       NAUTILUS_FILE_ATTRIBUTE_INFO |
Index: src/nautilus-places-sidebar.c
===================================================================
--- src/nautilus-places-sidebar.c	(revision 14073)
+++ src/nautilus-places-sidebar.c	(working copy)
@@ -1325,7 +1325,7 @@
 		GVolume *volume;
 		gtk_tree_model_get (model, &iter, PLACES_SIDEBAR_COLUMN_VOLUME, &volume, -1);
 		if (volume != NULL) {
-			nautilus_file_operations_mount_volume (NULL, volume, TRUE);
+			nautilus_file_operations_mount_volume (NULL, volume, FALSE);
 			g_object_unref (volume);
 		}
 	}
@@ -1440,7 +1440,7 @@
 			    -1);
 
 	if (volume != NULL) {
-		nautilus_file_operations_mount_volume (NULL, volume, TRUE);
+		nautilus_file_operations_mount_volume (NULL, volume, FALSE);
 		g_object_unref (volume);
 	}
 }
Index: src/nautilus-x-content-bar.c
===================================================================
--- src/nautilus-x-content-bar.c	(revision 14073)
+++ src/nautilus-x-content-bar.c	(working copy)
@@ -271,7 +271,9 @@
 	hbox = GTK_WIDGET (bar);
 
 	bar->priv->label = gtk_label_new (NULL);
-	gtk_box_pack_start (GTK_BOX (bar), bar->priv->label, FALSE, FALSE, 0);
+	gtk_label_set_ellipsize (GTK_LABEL (bar->priv->label), PANGO_ELLIPSIZE_END);
+	gtk_misc_set_alignment (GTK_MISC (bar->priv->label), 0.0, 0.5);
+	gtk_box_pack_start (GTK_BOX (bar), bar->priv->label, TRUE, TRUE, 0);
 
 	bar->priv->button = gtk_button_new ();
 	gtk_box_pack_end (GTK_BOX (hbox), bar->priv->button, FALSE, FALSE, 0);
Index: libnautilus-private/nautilus-mime-actions.c
===================================================================
--- libnautilus-private/nautilus-mime-actions.c	(revision 14073)
+++ libnautilus-private/nautilus-mime-actions.c	(working copy)
@@ -1258,7 +1258,6 @@
 		g_error_free (error);
 	} else {
 		location = nautilus_file_get_location (file);
-		nautilus_inhibit_autorun_for_file (location);
 		g_object_unref (G_OBJECT (location));
 	}
 	
Index: libnautilus-private/nautilus-autorun.c
===================================================================
--- libnautilus-private/nautilus-autorun.c	(revision 14073)
+++ libnautilus-private/nautilus-autorun.c	(working copy)
@@ -1353,52 +1353,22 @@
 	return NULL;
 }
 
-
-static GList *inhibit_mount_handling_for = NULL;
-
-
 static gboolean
-remove_inhibit_file_cb (gpointer data)
+remove_allow_volume (gpointer data)
 {
-	GFile *file = data;
-	GList *l;
-
-	l = g_list_find (inhibit_mount_handling_for, file);
-	if (l != NULL) {
-		inhibit_mount_handling_for = g_list_delete_link (inhibit_mount_handling_for, l);
-		g_object_unref (file);
-	}
-	
-	return FALSE;
-}
-
-void
-nautilus_inhibit_autorun_for_file (GFile *file)
-{
-	inhibit_mount_handling_for = g_list_prepend (inhibit_mount_handling_for, g_object_ref (file));
-	g_timeout_add_full (0,
-			    5000,
-			    remove_inhibit_file_cb,
-			    g_object_ref (file),
-			    g_object_unref);
-}
-
-static gboolean
-remove_inhibit_volume (gpointer data)
-{
 	GVolume *volume = data;
 
-	g_object_set_data (G_OBJECT (volume), "nautilus-inhibit-autorun", NULL);
+	g_object_set_data (G_OBJECT (volume), "nautilus-allow-autorun", NULL);
 	return FALSE;
 }
 
 void
-nautilus_inhibit_autorun_for_volume (GVolume *volume)
+nautilus_allow_autorun_for_volume (GVolume *volume)
 {
-	g_object_set_data (G_OBJECT (volume), "nautilus-inhibit-autorun", GINT_TO_POINTER (1));
+	g_object_set_data (G_OBJECT (volume), "nautilus-allow-autorun", GINT_TO_POINTER (1));
 	g_timeout_add_full (0,
 			    5000,
-			    remove_inhibit_volume,
+			    remove_allow_volume,
 			    g_object_ref (volume),
 			    g_object_unref);
 }
@@ -1425,12 +1395,12 @@
 	GVolume *enclosing_volume;
 	gboolean ignore_autorun;
 
-	ignore_autorun = FALSE;
+	ignore_autorun = TRUE;
 	enclosing_volume = g_mount_get_volume (mount);
 	if (enclosing_volume != NULL) {
-		if (g_object_get_data (G_OBJECT (enclosing_volume), "nautilus-inhibit-autorun") != NULL) {
-			ignore_autorun = TRUE;
-			g_object_set_data (G_OBJECT (enclosing_volume), "nautilus-inhibit-autorun", NULL);
+		if (g_object_get_data (G_OBJECT (enclosing_volume), "nautilus-allow-autorun") != NULL) {
+			ignore_autorun = FALSE;
+			g_object_set_data (G_OBJECT (enclosing_volume), "nautilus-allow-autorun", NULL);
 		}
 	}
 
@@ -1443,18 +1413,6 @@
 	
 	root = g_mount_get_root (mount);
 
-	for (l = inhibit_mount_handling_for; l != NULL; l = l->next) {
-		file = l->data;
-		if (g_file_has_prefix (file, root)) {
-			ignore_autorun = TRUE;
-			
-			inhibit_mount_handling_for = g_list_delete_link (inhibit_mount_handling_for, l);
-			g_object_unref (file);
-			
-			break;
-		}
-	}
-
 	/* only do autorun on local files or files where g_volume_should_automount() returns TRUE */
 	ignore_autorun = TRUE;
 	if ((g_file_is_native (root) && !should_skip_native_mount_root (root)) || 
Index: libnautilus-private/nautilus-autorun.h
===================================================================
--- libnautilus-private/nautilus-autorun.h	(revision 14073)
+++ libnautilus-private/nautilus-autorun.h	(working copy)
@@ -89,7 +89,6 @@
 
 void nautilus_autorun_launch_for_mount (GMount *mount, GAppInfo *app_info);
 
-void nautilus_inhibit_autorun_for_volume (GVolume *volume);
-void nautilus_inhibit_autorun_for_file (GFile *file);
+void nautilus_allow_autorun_for_volume (GVolume *volume);
 
 #endif /* NAUTILUS_AUTORUN_H */
Index: libnautilus-private/nautilus-vfs-file.c
===================================================================
--- libnautilus-private/nautilus-vfs-file.c	(revision 14073)
+++ libnautilus-private/nautilus-vfs-file.c	(working copy)
@@ -239,7 +239,6 @@
 						    res, &error);
 	nautilus_file_operation_complete (op, mounted_on, error);
 	if (mounted_on) {
-		nautilus_inhibit_autorun_for_file (mounted_on);
 		g_object_unref (mounted_on);
 	}
 	if (error) {
Index: libnautilus-private/nautilus-file-operations.c
===================================================================
--- libnautilus-private/nautilus-file-operations.c	(revision 14073)
+++ libnautilus-private/nautilus-file-operations.c	(working copy)
@@ -2017,10 +2017,7 @@
 	GError *error;
 	char *primary;
 	char *name;
-	gboolean inhibit_autorun;
 
-	inhibit_autorun = GPOINTER_TO_INT (g_object_get_data (G_OBJECT (mount_op), "inhibit-autorun"));
-
 	error = NULL;
 	if (!g_volume_mount_finish (G_VOLUME (source_object), res, &error)) {
 		if (error->code != G_IO_ERROR_FAILED_HANDLED) {
@@ -2033,12 +2030,8 @@
 			g_free (primary);
 		}
 		g_error_free (error);
-	} else {
-		if (inhibit_autorun) {
-			nautilus_inhibit_autorun_for_volume (G_VOLUME (source_object));
-		}
 	}
-	
+
 	g_object_unref (mount_op);
 }
 
@@ -2046,12 +2039,13 @@
 void
 nautilus_file_operations_mount_volume (GtkWindow *parent_window,
 				       GVolume *volume,
-				       gboolean inhibit_autorun)
+				       gboolean allow_autorun)
 {
 	GMountOperation *mount_op;
 	
 	mount_op = eel_mount_operation_new (parent_window);
-	g_object_set_data (G_OBJECT (mount_op), "inhibit-autorun", GINT_TO_POINTER (inhibit_autorun));
+	if (allow_autorun)
+		nautilus_allow_autorun_for_volume (volume);
 	g_volume_mount (volume, 0, mount_op, NULL, volume_mount_cb, mount_op);
 }
 
Index: libnautilus-private/nautilus-file-operations.h
===================================================================
--- libnautilus-private/nautilus-file-operations.h	(revision 14073)
+++ libnautilus-private/nautilus-file-operations.h	(working copy)
@@ -93,7 +93,7 @@
 					     gboolean                        check_trash);
 void nautilus_file_operations_mount_volume  (GtkWindow                      *parent_window,
 					     GVolume                        *volume,
-					     gboolean                        inhibit_autorun);
+					     gboolean                        allow_autorun);
 								
 
 void nautilus_file_operations_copy      (GList                *files,


Index: nautilus.spec
===================================================================
RCS file: /cvs/pkgs/rpms/nautilus/devel/nautilus.spec,v
retrieving revision 1.197
retrieving revision 1.198
diff -u -r1.197 -r1.198
--- nautilus.spec	14 Apr 2008 13:50:04 -0000	1.197
+++ nautilus.spec	16 Apr 2008 06:43:57 -0000	1.198
@@ -19,7 +19,7 @@
 Name:		nautilus
 Summary:        Nautilus is a file manager for GNOME
 Version: 	2.22.2
-Release:	2%{?dist}
+Release:	3%{?dist}
 License: 	GPLv2+
 Group:          User Interface/Desktops
 Source: 	http://download.gnome.org/sources/%{name}/2.22/%{name}-%{version}.tar.bz2
@@ -86,9 +86,7 @@
 Patch7:		rtl-fix.patch
 Patch8:		nautilus-2.22.1-hide-white-screen.patch
 
-# livecd hiding patch (https://bugzilla.redhat.com/show_bug.cgi?id=439166)
-Patch9:		nautilus-2.22.2-hide-livecd-mount.diff
-
+Patch9:		nautilus-2.22-fix-autorun.patch
 
 %description
 Nautilus integrates access to files, applications, media,
@@ -125,7 +123,7 @@
 %patch6 -p1 -b .dynamic-search
 %patch7 -p1 -b .rtl-fix
 %patch8 -p1 -b .hide-white-screen
-%patch9 -p0 -b .livecd
+%patch9 -p0 -b .fix-autorun
 
 %build
 
@@ -236,6 +234,11 @@
 %{_libdir}/*.so
 
 %changelog
+* Wed Apr 16 2008 David Zeuthen <davidz at redhat.com> - 2.22.2-3
+- Revert Fedora livecd mount (fix is in latest gvfs packages) and
+  add a patch to avoid trying to autorun mounts that are mounted
+  from outside Nautilus (#442189)
+
 * Fri Apr 11 2008 Tomas Bzatek <tbzatek at redhat.com> - 2.22.2-2
 - Hide Fedora livecd mount (#439166)
 


--- nautilus-2.22.2-hide-livecd-mount.diff DELETED ---




More information about the fedora-extras-commits mailing list