summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordtucker@openbsd.org <dtucker@openbsd.org>2023-03-08 06:21:32 +0000
committerDarren Tucker <dtucker@dtucker.net>2023-03-08 17:31:07 +1100
commit36c6c3eff5e4a669ff414b9daf85f919666e8e03 (patch)
tree88e12ff08f36d7afc0db51d44a08b088937d844d
parentdfb9b736e1ccf9e6b03eea21cd961f4fd0634c98 (diff)
upstream: Plug mem leak. Coverity CID 405196, ok djm@
-rw-r--r--sftp.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/sftp.c b/sftp.c
index 3a252546..4a377442 100644
--- a/sftp.c
+++ b/sftp.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: sftp.c,v 1.227 2023/03/08 04:43:12 guenther Exp $ */
+/* $OpenBSD: sftp.c,v 1.228 2023/03/08 06:21:32 dtucker Exp $ */
/*
* Copyright (c) 2001-2004 Damien Miller <djm@openbsd.org>
*
@@ -1997,7 +1997,9 @@ complete_match(EditLine *el, struct sftp_conn *conn, char *remote_path,
memset(&g, 0, sizeof(g));
if (remote != LOCAL) {
- tmp = make_absolute_pwd_glob(tmp, remote_path);
+ tmp2 = make_absolute_pwd_glob(tmp, remote_path);
+ free(tmp);
+ tmp = tmp2;
remote_glob(conn, tmp, GLOB_DOOFFS|GLOB_MARK, NULL, &g);
} else
glob(tmp, GLOB_DOOFFS|GLOB_MARK, NULL, &g);