From ffc900fdfdd985a8398c62d2936ea4155c15df4c Mon Sep 17 00:00:00 2001 From: Cosimo Cecchi Date: Sun, 27 Mar 2016 09:58:32 -0700 Subject: admin: factor out function to set common GVfsJobOpenForWrite attrs --- daemon/gvfsbackendadmin.c | 37 ++++++++++++++++--------------------- 1 file changed, 16 insertions(+), 21 deletions(-) (limited to 'daemon/gvfsbackendadmin.c') diff --git a/daemon/gvfsbackendadmin.c b/daemon/gvfsbackendadmin.c index af2fff1a..522ea971 100644 --- a/daemon/gvfsbackendadmin.c +++ b/daemon/gvfsbackendadmin.c @@ -232,6 +232,19 @@ do_write (GVfsBackend *backend, complete_job (job, error); } +static void +set_open_for_write_attributes (GVfsJobOpenForWrite *open_write_job, + GFileOutputStream *stream) +{ + GSeekable *seekable = G_SEEKABLE (stream); + + g_vfs_job_open_for_write_set_handle (open_write_job, stream); + g_vfs_job_open_for_write_set_can_seek + (open_write_job, g_seekable_can_seek (seekable)); + g_vfs_job_open_for_write_set_can_truncate + (open_write_job, g_seekable_can_truncate (seekable)); +} + static void do_append_to (GVfsBackend *backend, GVfsJobOpenForWrite *open_write_job, @@ -265,11 +278,7 @@ do_append_to (GVfsBackend *backend, goto out; } - g_vfs_job_open_for_write_set_handle (open_write_job, stream); - g_vfs_job_open_for_write_set_can_seek - (open_write_job, g_seekable_can_seek (seekable)); - g_vfs_job_open_for_write_set_can_truncate - (open_write_job, g_seekable_can_truncate (seekable)); + set_open_for_write_attributes (open_write_job, stream); g_vfs_job_open_for_write_set_initial_offset (open_write_job, g_seekable_tell (seekable)); @@ -288,7 +297,6 @@ do_create (GVfsBackend *backend, GError *error = NULL; GFile *file; GFileOutputStream *stream; - GSeekable *seekable; if (!check_permission (self, job)) return; @@ -300,13 +308,7 @@ do_create (GVfsBackend *backend, if (error != NULL) goto out; - seekable = G_SEEKABLE (stream); - - g_vfs_job_open_for_write_set_handle (open_write_job, stream); - g_vfs_job_open_for_write_set_can_seek - (open_write_job, g_seekable_can_seek (seekable)); - g_vfs_job_open_for_write_set_can_truncate - (open_write_job, g_seekable_can_truncate (seekable)); + set_open_for_write_attributes (open_write_job, stream); out: complete_job (job, error); @@ -325,7 +327,6 @@ do_replace (GVfsBackend *backend, GError *error = NULL; GFile *file; GFileOutputStream *stream; - GSeekable *seekable; if (!check_permission (self, job)) return; @@ -338,13 +339,7 @@ do_replace (GVfsBackend *backend, if (error != NULL) goto out; - seekable = G_SEEKABLE (stream); - - g_vfs_job_open_for_write_set_handle (open_write_job, stream); - g_vfs_job_open_for_write_set_can_seek - (open_write_job, g_seekable_can_seek (seekable)); - g_vfs_job_open_for_write_set_can_truncate - (open_write_job, g_seekable_can_truncate (seekable)); + set_open_for_write_attributes (open_write_job, stream); out: complete_job (job, error); -- cgit v1.2.1