mirror of
https://github.com/vim/vim.git
synced 2025-09-24 03:44:06 -04:00
patch 8.0.1492: memory leak in balloon_split()
Problem: Memory leak in balloon_split(). Solution: Free the balloon lines. Free the balloon when exiting.
This commit is contained in:
@@ -1447,6 +1447,8 @@ f_balloon_split(typval_T *argvars, typval_T *rettv UNUSED)
|
|||||||
/* Skip the first and last item, they are always empty. */
|
/* Skip the first and last item, they are always empty. */
|
||||||
for (i = 1; i < size - 1; ++i)
|
for (i = 1; i < size - 1; ++i)
|
||||||
list_append_string(rettv->vval.v_list, array[i].pum_text, -1);
|
list_append_string(rettv->vval.v_list, array[i].pum_text, -1);
|
||||||
|
while (size > 0)
|
||||||
|
vim_free(array[--size].pum_text);
|
||||||
vim_free(array);
|
vim_free(array);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -1116,6 +1116,10 @@ free_all_mem(void)
|
|||||||
spell_free_all();
|
spell_free_all();
|
||||||
# endif
|
# endif
|
||||||
|
|
||||||
|
#if defined(FEAT_INS_EXPAND) && defined(FEAT_BEVAL_TERM)
|
||||||
|
ui_remove_balloon();
|
||||||
|
# endif
|
||||||
|
|
||||||
# if defined(FEAT_USR_CMDS)
|
# if defined(FEAT_USR_CMDS)
|
||||||
/* Clear user commands (before deleting buffers). */
|
/* Clear user commands (before deleting buffers). */
|
||||||
ex_comclear(NULL);
|
ex_comclear(NULL);
|
||||||
|
@@ -771,6 +771,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 */
|
||||||
|
/**/
|
||||||
|
1492,
|
||||||
/**/
|
/**/
|
||||||
1491,
|
1491,
|
||||||
/**/
|
/**/
|
||||||
|
Reference in New Issue
Block a user