diff options
author | Alexander Larsson <alexl@redhat.com> | 2008-02-26 11:25:56 +0000 |
---|---|---|
committer | Alexander Larsson <alexl@src.gnome.org> | 2008-02-26 11:25:56 +0000 |
commit | 5742794285035d57e5760daad3f48e7808c4282e (patch) | |
tree | 36a206c742319bbe4f8113d9b0fded33676eb9f2 /daemon/gvfsjobmount.c | |
parent | 9874a1fb4116b7155ef00ee9f0644ad5d1131c90 (diff) | |
download | gvfs-5742794285035d57e5760daad3f48e7808c4282e.tar.gz |
Ref job while calling out.
2008-02-26 Alexander Larsson <alexl@redhat.com>
* daemon/gvfsjob.c:
(g_vfs_job_run):
(g_vfs_job_try):
Ref job while calling out.
* daemon/gvfsjobmount.c:
Own ref to backend while job is alive.
svn path=/trunk/; revision=1391
Diffstat (limited to 'daemon/gvfsjobmount.c')
-rw-r--r-- | daemon/gvfsjobmount.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/daemon/gvfsjobmount.c b/daemon/gvfsjobmount.c index ca2d69e5..5faefac0 100644 --- a/daemon/gvfsjobmount.c +++ b/daemon/gvfsjobmount.c @@ -49,6 +49,7 @@ g_vfs_job_mount_finalize (GObject *object) g_mount_spec_unref (job->mount_spec); g_object_unref (job->mount_source); + g_object_unref (job->backend); if (G_OBJECT_CLASS (g_vfs_job_mount_parent_class)->finalize) (*G_OBJECT_CLASS (g_vfs_job_mount_parent_class)->finalize) (object); @@ -86,7 +87,9 @@ g_vfs_job_mount_new (GMountSpec *spec, job->mount_spec = g_mount_spec_ref (spec); job->mount_source = g_object_ref (source); job->is_automount = is_automount; - job->backend = backend; + /* Ref the backend so we're sure its alive + during the whole job request. */ + job->backend = g_object_ref (backend); if (request) job->request = dbus_message_ref (request); |