1
0
forked from aniani/vim

patch 9.0.0499: in :def function list created after const is locked

Problem:    In :def function list created after const is locked.
Solution:   Reset v_lock. (closes #11154)
This commit is contained in:
Bram Moolenaar 2022-09-18 13:46:08 +01:00
parent 747f110420
commit 566badc76b
3 changed files with 10 additions and 0 deletions

View File

@ -2023,6 +2023,13 @@ def Test_var_declaration()
unlet w:FLIST
enddef
def Test_create_list_after_const()
const a = 1
g:ll = []
assert_equal(0, islocked('g:ll'))
unlet g:ll
enddef
def Test_var_declaration_fails()
var lines =<< trim END
vim9script

View File

@ -699,6 +699,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
499,
/**/
498,
/**/

View File

@ -200,6 +200,7 @@ exe_newlist(int count, ectx_T *ectx)
tv = STACK_TV_BOT(-1);
tv->v_type = VAR_LIST;
tv->vval.v_list = list;
tv->v_lock = 0;
if (list != NULL)
++list->lv_refcount;
return OK;