summaryrefslogtreecommitdiff
path: root/gvfs/gvfs.c
diff options
context:
space:
mode:
authorTomas Bzatek <tbzatek@redhat.com>2024-10-24 10:14:19 +0200
committerTomas Bzatek <tbzatek@redhat.com>2024-10-24 10:14:19 +0200
commit36d39e22091eb274a01eb6c1251bf107127c9c79 (patch)
tree210a499af9cfdb4a7d4b6183a57afef482e01013 /gvfs/gvfs.c
parenta2dad2d17101658d52d7bd13e2e84fbd1da3e74d (diff)
downloadtuxcmd-modules-36d39e22091eb274a01eb6c1251bf107127c9c79.tar.xz
gvfs: Return error when Append is requested for copy operation
Would need to fall back to manual file open-read/write-close
Diffstat (limited to 'gvfs/gvfs.c')
-rw-r--r--gvfs/gvfs.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/gvfs/gvfs.c b/gvfs/gvfs.c
index 0b1aa30..bc708f8 100644
--- a/gvfs/gvfs.c
+++ b/gvfs/gvfs.c
@@ -1318,6 +1318,11 @@ VFSCopyToLocal (struct TVFSGlobs *globs, const char *sSrcName, const char *sDstN
g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_INVALID_ARGUMENT, "globs->file == NULL");
return FALSE;
}
+ if (Append) {
+ log_error ("VFSCopyToLocal: Appending not supported");
+ g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED, "Appending not supported");
+ return FALSE;
+ }
log_notice ("VFSCopyToLocal: Copying '%s' --> '%s'", sSrcName, sDstName);
src = g_file_resolve_relative_path (globs->file, sSrcName);
@@ -1336,6 +1341,7 @@ VFSCopyToLocal (struct TVFSGlobs *globs, const char *sSrcName, const char *sDstN
res = TRUE;
local_error = NULL;
globs->cancellable = g_cancellable_new ();
+ /* FIXME: Appending not supported */
g_file_copy (src, dst, TUXCMD_DEFAULT_COPY_FLAGS, globs->cancellable, vfs_copy_progress_callback, globs, &local_error);
if (local_error) {
log_error ("VFSCopyToLocal: g_file_copy() error: %s", local_error->message);
@@ -1362,6 +1368,11 @@ VFSCopyFromLocal (struct TVFSGlobs *globs, const char *sSrcName, const char *sDs
g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_INVALID_ARGUMENT, "globs->file == NULL");
return FALSE;
}
+ if (Append) {
+ log_error ("VFSCopyFromLocal: Appending not supported");
+ g_set_error_literal (error, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED, "Appending not supported");
+ return FALSE;
+ }
log_notice ("VFSCopyFromLocal: Copying '%s' --> '%s'", sSrcName, sDstName);
src = g_file_new_for_path (sSrcName);