From b28ebbca8400dccfc5eb9957ed96fcba9fe05e46 Mon Sep 17 00:00:00 2001
From: Bram Moolenaar <Bram@vim.org>
Date: Wed, 14 Jul 2010 16:59:57 +0200
Subject: [PATCH] Fix using freed memory in :find completion.

---
 src/misc1.c | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/src/misc1.c b/src/misc1.c
index 675c2e77a5..493b532bd3 100644
--- a/src/misc1.c
+++ b/src/misc1.c
@@ -9550,15 +9550,14 @@ gen_expand_wildcards(num_pat, pat, num_file, file, flags)
 	    vim_free(t);
 	}
 
+#if defined(FEAT_SEARCHPATH)
+	if (flags & EW_PATH)
+	    uniquefy_paths(&ga, p);
+#endif
 	if (p != pat[i])
 	    vim_free(p);
     }
 
-#if defined(FEAT_SEARCHPATH)
-    if (flags & EW_PATH)
-	uniquefy_paths(&ga, p);
-#endif
-
     *num_file = ga.ga_len;
     *file = (ga.ga_data != NULL) ? (char_u **)ga.ga_data : (char_u **)"";
 
-- 
GitLab