summaryrefslogtreecommitdiffstats
path: root/daemon/upload.c
diff options
context:
space:
mode:
Diffstat (limited to 'daemon/upload.c')
-rw-r--r--daemon/upload.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/daemon/upload.c b/daemon/upload.c
index e15eadef..65c66675 100644
--- a/daemon/upload.c
+++ b/daemon/upload.c
@@ -77,7 +77,8 @@ do_upload (const char *filename)
if (close (fd) == -1) {
err = errno;
- cancel_receive ();
+ if (r == -1) /* if r == 0, file transfer ended already */
+ cancel_receive ();
errno = err;
reply_with_perror ("close: %s", filename);
return -1;