summaryrefslogtreecommitdiff
path: root/daemon/gvfsjobmountmountable.c
diff options
context:
space:
mode:
authorAlexander Larsson <alexl@src.gnome.org>2007-09-13 13:57:50 +0000
committerAlexander Larsson <alexl@src.gnome.org>2007-09-13 13:57:50 +0000
commitb3d92ba9a95013d985efd58cf1dbb2a61cc718b0 (patch)
tree4f680ce98ef073f5b740b1cdd3e7ca3cf40b19a2 /daemon/gvfsjobmountmountable.c
parent2c4aa53f53174bddaeafce332c709a4e0869275d (diff)
downloadgvfs-b3d92ba9a95013d985efd58cf1dbb2a61cc718b0.tar.gz
Check for unsupported operations and return error instead of crashing,
Original git commit by Alexander Larsson <alexl@redhat.com> at 1183457271 +0200 svn path=/trunk/; revision=604
Diffstat (limited to 'daemon/gvfsjobmountmountable.c')
-rw-r--r--daemon/gvfsjobmountmountable.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/daemon/gvfsjobmountmountable.c b/daemon/gvfsjobmountmountable.c
index d0c9e8d1..9cb926c0 100644
--- a/daemon/gvfsjobmountmountable.c
+++ b/daemon/gvfsjobmountmountable.c
@@ -119,6 +119,13 @@ run (GVfsJob *job)
GVfsJobMountMountable *op_job = G_VFS_JOB_MOUNT_MOUNTABLE (job);
GVfsBackendClass *class = G_VFS_BACKEND_GET_CLASS (op_job->backend);
+ if (class->mount_mountable == NULL)
+ {
+ g_vfs_job_failed (job, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED,
+ _("Operation not supported by backend"));
+ return;
+ }
+
class->mount_mountable (op_job->backend,
op_job,
op_job->filename,