diff options
author | zeertzjq <zeertzjq@outlook.com> | 2024-03-21 07:11:58 +0100 |
---|---|---|
committer | Christian Brabandt <cb@256bit.org> | 2024-03-21 07:11:58 +0100 |
commit | 70e566b0bd29189b1baf3dc915b6a98de36fbded (patch) | |
tree | 667b76fd377db538c0c92e2b363a79af3d7d3882 /src/insexpand.c | |
parent | 6d1d18084b7b04ab7fd73331ce59e99b6dd9ad72 (diff) |
patch 9.1.0193: May leak memory in completion when ga_grow() failsv9.1.0193
Problem: May leak memory in completion when ga_grow() fails.
Solution: Free "wca" when ga_grow() fails (zeertzjq).
fixes: #14248
closes: #14249
Signed-off-by: zeertzjq <zeertzjq@outlook.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
Diffstat (limited to 'src/insexpand.c')
-rw-r--r-- | src/insexpand.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/insexpand.c b/src/insexpand.c index 63f2e3814d..c080d60cd9 100644 --- a/src/insexpand.c +++ b/src/insexpand.c @@ -653,7 +653,10 @@ ins_compl_infercase_gettext( // getting to six bytes from the edge of IObuff switch to using a // growarray. Add the character in the next round. if (ga_grow(&gap, IOSIZE) == FAIL) + { + vim_free(wca); return (char_u *)"[failed]"; + } *p = NUL; STRCPY(gap.ga_data, IObuff); gap.ga_len = (int)STRLEN(IObuff); |