summaryrefslogtreecommitdiff
path: root/sftp.c
diff options
context:
space:
mode:
authordtucker <dtucker>2004-12-06 11:43:43 +0000
committerdtucker <dtucker>2004-12-06 11:43:43 +0000
commit97b4670ea2487223e56272705922e60f8b795001 (patch)
tree54e3cb195b092b930f745d50ee7f58ab52f7333e /sftp.c
parent7319f5e069ba7c20ecedeb48476999fa03b059cd (diff)
downloadopenssh-97b4670ea2487223e56272705922e60f8b795001.tar.gz
- (dtucker) OpenBSD CVS Sync
- markus@cvs.openbsd.org 2004/11/25 22:22:14 [sftp-client.c sftp.c] leak; from mpech
Diffstat (limited to 'sftp.c')
-rw-r--r--sftp.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/sftp.c b/sftp.c
index 2db394e2..b37c36b7 100644
--- a/sftp.c
+++ b/sftp.c
@@ -16,7 +16,7 @@
#include "includes.h"
-RCSID("$OpenBSD: sftp.c,v 1.57 2004/11/05 12:19:56 djm Exp $");
+RCSID("$OpenBSD: sftp.c,v 1.58 2004/11/25 22:22:14 markus Exp $");
#ifdef USE_LIBEDIT
#include <histedit.h>
@@ -1265,8 +1265,11 @@ interactive_loop(int fd_in, int fd_out, char *file1, char *file2)
if (remote_is_dir(conn, dir) && file2 == NULL) {
printf("Changing to: %s\n", dir);
snprintf(cmd, sizeof cmd, "cd \"%s\"", dir);
- if (parse_dispatch_command(conn, cmd, &pwd, 1) != 0)
+ if (parse_dispatch_command(conn, cmd, &pwd, 1) != 0) {
+ xfree(dir);
+ xfree(pwd);
return (-1);
+ }
} else {
if (file2 == NULL)
snprintf(cmd, sizeof cmd, "get %s", dir);