Mercurial > vim
changeset 21072:42e2fb7ec6e1
patch 8.2.1087: possible memory leak when file expansion fails
Commit: https://github.com/vim/vim/commit/566cc8c72bb8036f015a435800f28ef9f6a9a3b6
Author: Bram Moolenaar <Bram@vim.org>
Date: Mon Jun 29 21:14:51 2020 +0200
patch 8.2.1087: possible memory leak when file expansion fails
Problem: Possible memory leak when file expansion fails.
Solution: Clear the grow array when returning FAIL. Use an error message
instead of an empty string.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Mon, 29 Jun 2020 21:15:03 +0200 |
parents | 80ed45189526 |
children | 334a8a5a6267 |
files | src/filepath.c src/version.c |
diffstat | 2 files changed, 8 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/src/filepath.c +++ b/src/filepath.c @@ -3813,8 +3813,13 @@ gen_expand_wildcards( vim_free(p); } + // When returning FAIL the array must be freed here. + if (retval == FAIL) + ga_clear(&ga); + *num_file = ga.ga_len; - *file = (ga.ga_data != NULL) ? (char_u **)ga.ga_data : (char_u **)""; + *file = (ga.ga_data != NULL) ? (char_u **)ga.ga_data + : (char_u **)_("no matches"); recursive = FALSE;