From 608c03298a9b1c85cd7a3a9b649531490132a3f3 Mon Sep 17 00:00:00 2001 From: Jan Edmund Lazo Date: Tue, 30 Mar 2021 19:51:38 -0400 Subject: vim-patch:8.1.0936: may leak memory when using 'vartabstop' Problem: May leak memory when using 'vartabstop'. (Kuang-che Wu) Solution: Fix handling allocated memory for 'vartabstop'. (closes vim/vim#3976) https://github.com/vim/vim/commit/55c77cf2ea9c15e1ec75d1faf702ec3c9e325271 --- src/nvim/option.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/nvim/option.c b/src/nvim/option.c index a4736656cd..612ecca96a 100644 --- a/src/nvim/option.c +++ b/src/nvim/option.c @@ -2001,7 +2001,9 @@ static void didset_options2(void) // Parse default for 'wildmode'. check_opt_wim(); + xfree(curbuf->b_p_vsts_array); tabstop_set(curbuf->b_p_vsts, &curbuf->b_p_vsts_array); + xfree(curbuf->b_p_vts_array); tabstop_set(curbuf->b_p_vts, &curbuf->b_p_vts_array); } @@ -3167,9 +3169,7 @@ ambw_end: if (errmsg == NULL) { long *oldarray = curbuf->b_p_vts_array; if (tabstop_set(*varp, &(curbuf->b_p_vts_array))) { - if (oldarray) { - xfree(oldarray); - } + xfree(oldarray); if (foldmethodIsIndent(curwin)) { foldUpdateAll(curwin); } -- cgit