summaryrefslogtreecommitdiff
path: root/daemon/gvfsdaemon.c
diff options
context:
space:
mode:
authorTimothy Arceri <t_arceri@yahoo.com.au>2013-04-09 16:48:27 +1000
committerAlexander Larsson <alexl@redhat.com>2013-04-10 09:49:23 +0200
commitef65827c7962ad534b4d044354249d74a832e1d4 (patch)
tree30465d08c943a1b0ab9855da4c3a6e73b0d1ddef /daemon/gvfsdaemon.c
parent10331e649f843e9b50e78aeb6dae1b439bd27c57 (diff)
downloadgvfs-ef65827c7962ad534b4d044354249d74a832e1d4.tar.gz
Fix g_vfs_daemon_close_active_channels() to take a GVfsBackend argument and only close channels with that backend as a single daemon may handle multiple mounts/backends.
https://bugzilla.gnome.org/show_bug.cgi?id=511802
Diffstat (limited to 'daemon/gvfsdaemon.c')
-rw-r--r--daemon/gvfsdaemon.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/daemon/gvfsdaemon.c b/daemon/gvfsdaemon.c
index 7db8ad2c..c0ac8caf 100644
--- a/daemon/gvfsdaemon.c
+++ b/daemon/gvfsdaemon.c
@@ -1029,11 +1029,13 @@ g_vfs_daemon_run_job_in_thread (GVfsDaemon *daemon,
}
void
-g_vfs_daemon_close_active_channels (GVfsDaemon *daemon)
+g_vfs_daemon_close_active_channels (GVfsDaemon *daemon,
+ GVfsBackend *backend)
{
GList *l;
for (l = daemon->job_sources; l != NULL; l = l->next)
- if (G_VFS_IS_CHANNEL (l->data))
+ if (G_VFS_IS_CHANNEL (l->data) &&
+ g_vfs_channel_get_backend (G_VFS_CHANNEL (l->data)) == backend)
g_vfs_channel_force_close (G_VFS_CHANNEL (l->data));
}