summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2024-03-21 07:11:58 +0100
committerChristian Brabandt <cb@256bit.org>2024-03-21 07:11:58 +0100
commit70e566b0bd29189b1baf3dc915b6a98de36fbded (patch)
tree667b76fd377db538c0c92e2b363a79af3d7d3882
parent6d1d18084b7b04ab7fd73331ce59e99b6dd9ad72 (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>
-rw-r--r--src/insexpand.c3
-rw-r--r--src/version.c2
2 files changed, 5 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);
diff --git a/src/version.c b/src/version.c
index dc97d9bda3..8fa2f694d5 100644
--- a/src/version.c
+++ b/src/version.c
@@ -705,6 +705,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 193,
+/**/
192,
/**/
191,