mirror of
https://github.com/vim/vim.git
synced 2025-09-24 03:44:06 -04:00
patch 9.1.0193: May leak memory in completion when ga_grow() fails
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>
This commit is contained in:
committed by
Christian Brabandt
parent
6d1d18084b
commit
70e566b0bd
@@ -653,7 +653,10 @@ ins_compl_infercase_gettext(
|
|||||||
// getting to six bytes from the edge of IObuff switch to using a
|
// getting to six bytes from the edge of IObuff switch to using a
|
||||||
// growarray. Add the character in the next round.
|
// growarray. Add the character in the next round.
|
||||||
if (ga_grow(&gap, IOSIZE) == FAIL)
|
if (ga_grow(&gap, IOSIZE) == FAIL)
|
||||||
|
{
|
||||||
|
vim_free(wca);
|
||||||
return (char_u *)"[failed]";
|
return (char_u *)"[failed]";
|
||||||
|
}
|
||||||
*p = NUL;
|
*p = NUL;
|
||||||
STRCPY(gap.ga_data, IObuff);
|
STRCPY(gap.ga_data, IObuff);
|
||||||
gap.ga_len = (int)STRLEN(IObuff);
|
gap.ga_len = (int)STRLEN(IObuff);
|
||||||
|
@@ -704,6 +704,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
193,
|
||||||
/**/
|
/**/
|
||||||
192,
|
192,
|
||||||
/**/
|
/**/
|
||||||
|
Reference in New Issue
Block a user