diff src/ex_cmds.c @ 14218:539b070778b0 v8.1.0126

patch 8.1.0126: various problems with 'vartabstop' commit https://github.com/vim/vim/commit/307ac5c68e9e624ab713136d79f35bb73f780d2d Author: Bram Moolenaar <Bram@vim.org> Date: Thu Jun 28 22:23:00 2018 +0200 patch 8.1.0126: various problems with 'vartabstop' Problem: Various problems with 'vartabstop'. Solution: Fix memory leak. Fix crash. Add a few more tests. (Christian Brabandt, closes #3076)
author Christian Brabandt <cb@256bit.org>
date Thu, 28 Jun 2018 22:30:06 +0200
parents f2ab259ef88a
children 90bed90d1130
line wrap: on
line diff
--- a/src/ex_cmds.c
+++ b/src/ex_cmds.c
@@ -866,7 +866,6 @@ ex_retab(exarg_T *eap)
 	{
 	    set_string_option_direct((char_u *)"vts", -1, new_ts_str,
 							OPT_FREE|OPT_LOCAL, 0);
-	    vim_free(new_ts_str);
 	    curbuf->b_p_vts_array = new_vts_array;
 	    vim_free(old_vts_ary);
 	}
@@ -877,6 +876,7 @@ ex_retab(exarg_T *eap)
 	    curbuf->b_p_ts = tabstop_first(new_vts_array);
 	    vim_free(new_vts_array);
 	}
+	vim_free(new_ts_str);
     }
 #else
     curbuf->b_p_ts = new_ts;