gvfs r1147 - in trunk: . daemon



Author: gicmo
Date: Thu Jan 17 19:17:37 2008
New Revision: 1147
URL: http://svn.gnome.org/viewvc/gvfs?rev=1147&view=rev

Log:
2008-01-17  Christian Kellner  <gicmo gnome org>

	* daemon/gvfsbackenddav.c: 
	Disconnect signal handler, since the data struct we pass
	into the signal handler will be invalid after the mount
	is finished.


Modified:
   trunk/ChangeLog
   trunk/daemon/gvfsbackenddav.c

Modified: trunk/daemon/gvfsbackenddav.c
==============================================================================
--- trunk/daemon/gvfsbackenddav.c	(original)
+++ trunk/daemon/gvfsbackenddav.c	Thu Jan 17 19:17:37 2008
@@ -485,6 +485,8 @@
 
 typedef struct _MountOpData {
 
+  gulong        signal_id;
+
   SoupSession  *session;
   GMountSource *mount_source;
 
@@ -710,6 +712,8 @@
   g_vfs_backend_set_mount_spec (G_VFS_BACKEND (backend), mount_spec);
   g_mount_spec_unref (mount_spec);
 
+  g_signal_handler_disconnect (session, data->signal_id);
+
   g_print ("- discover_mount_root_ready success: %s \n", mount_base->path);
   g_vfs_job_succeeded (G_VFS_JOB (job));
 }
@@ -776,8 +780,8 @@
   data->mount_source = g_object_ref (mount_source);
   data->username = g_strdup (user);
 
-  g_signal_connect (session, "authenticate",
-                    G_CALLBACK (soup_authenticate), data);
+  data->signal_id = g_signal_connect (session, "authenticate",
+                                      G_CALLBACK (soup_authenticate), data);
 
   g_vfs_job_set_backend_data (G_VFS_JOB (job), data, mount_op_data_free);
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]