|
|
ad7ee3 |
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
|
ad7ee3 |
From: Christophe Fergeau <cfergeau@redhat.com>
|
|
|
ad7ee3 |
Date: Thu, 27 Mar 2014 18:04:59 +0100
|
|
|
ad7ee3 |
Subject: [PATCH] Disable file xfer when no suitable destination dir
|
|
|
ad7ee3 |
|
|
|
ad7ee3 |
Currently, if no suitable destination directory can be found, the file
|
|
|
ad7ee3 |
transfer code defaults to using '.' as the destination directory. As this
|
|
|
ad7ee3 |
is unlikely to work, better to just disable file transfers when we end up
|
|
|
ad7ee3 |
in such a situation. This currently happens when spawning spice-vdagent
|
|
|
ad7ee3 |
from gdm where we don't want file transfers to be available anyway.
|
|
|
ad7ee3 |
|
|
|
ad7ee3 |
(cherry picked from commit 689dcd35edb55abcdef4d30d92fdcca22d81ee23)
|
|
|
ad7ee3 |
---
|
|
|
ad7ee3 |
src/vdagent.c | 11 ++++++-----
|
|
|
ad7ee3 |
1 file changed, 6 insertions(+), 5 deletions(-)
|
|
|
ad7ee3 |
|
|
|
ad7ee3 |
diff --git a/src/vdagent.c b/src/vdagent.c
|
|
|
ad7ee3 |
index 9586432..32c84e5 100644
|
|
|
ad7ee3 |
--- a/src/vdagent.c
|
|
|
ad7ee3 |
+++ b/src/vdagent.c
|
|
|
ad7ee3 |
@@ -282,13 +282,14 @@ reconnect:
|
|
|
ad7ee3 |
fx_dir = g_get_user_special_dir(G_USER_DIRECTORY_DESKTOP);
|
|
|
ad7ee3 |
else if (!strcmp(fx_dir, "xdg-download"))
|
|
|
ad7ee3 |
fx_dir = g_get_user_special_dir(G_USER_DIRECTORY_DOWNLOAD);
|
|
|
ad7ee3 |
- if (!fx_dir) {
|
|
|
ad7ee3 |
+ if (fx_dir) {
|
|
|
ad7ee3 |
+ vdagent_file_xfers = vdagent_file_xfers_create(client, fx_dir,
|
|
|
ad7ee3 |
+ fx_open_dir, debug);
|
|
|
ad7ee3 |
+ } else {
|
|
|
ad7ee3 |
syslog(LOG_WARNING,
|
|
|
ad7ee3 |
- "warning could not get file xfer save dir, using cwd");
|
|
|
ad7ee3 |
- fx_dir = ".";
|
|
|
ad7ee3 |
+ "warning could not get file xfer save dir, file transfers will be disabled");
|
|
|
ad7ee3 |
+ vdagent_file_xfers = NULL;
|
|
|
ad7ee3 |
}
|
|
|
ad7ee3 |
- vdagent_file_xfers = vdagent_file_xfers_create(client, fx_dir,
|
|
|
ad7ee3 |
- fx_open_dir, debug);
|
|
|
ad7ee3 |
|
|
|
ad7ee3 |
while (client && !quit) {
|
|
|
ad7ee3 |
FD_ZERO(&readfds);
|