- (dtucker) OpenBSD CVS Sync
   - markus@cvs.openbsd.org 2004/11/25 22:22:14
     [sftp-client.c sftp.c]
     leak; from mpech
diff --git a/sftp.c b/sftp.c
index 2db394e..b37c36b 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 @@
 		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);