commit | 8c697e3698e7dbe0a3c4524ac360b78ceb852b23 | [log] [tgz] |
---|---|---|
author | Bram Moolenaar <Bram@vim.org> | Tue Dec 28 20:18:50 2021 +0000 |
committer | Bram Moolenaar <Bram@vim.org> | Tue Dec 28 20:18:50 2021 +0000 |
tree | f73537be5ed996f564bb468fb2cf95a2a89a8656 | |
parent | 92f246e4f9936f15471d5ee71b9afd5f3e6e0653 [diff] [blame] |
patch 8.2.3927: Vim9: double free when using lambda Problem: Vim9: double free when using lambda. Solution: Don't free both cmdline and line_to_free.
diff --git a/src/userfunc.c b/src/userfunc.c index b87cded..c894c58 100644 --- a/src/userfunc.c +++ b/src/userfunc.c
@@ -1146,7 +1146,8 @@ ga_init2(&newlines, (int)sizeof(char_u *), 10); if (get_function_body(&eap, &newlines, NULL, &line_to_free) == FAIL) { - vim_free(cmdline); + if (cmdline != line_to_free) + vim_free(cmdline); goto erret; }