diff options
author | Bram Moolenaar <Bram@vim.org> | 2022-11-24 11:31:29 +0000 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2022-11-24 11:31:29 +0000 |
commit | 82946e1439d31e86dfeb6166415c73e70475cce2 (patch) | |
tree | fab663683e6226c49f6b6c94d1360defc9b05b26 | |
parent | 24482fbfd599d2273c48951df7d00d62f3e66c85 (diff) | |
download | vim-git-82946e1439d31e86dfeb6166415c73e70475cce2.tar.gz |
patch 9.0.0936: wrong type for "isunnamed" returned by getreginfo()v9.0.0936
Problem: Wrong type for "isunnamed" returned by getreginfo().
Solution: Use VAR_BOOL instead of VAR_SPECIAL. (closes #11598)
-rw-r--r-- | src/evalfunc.c | 2 | ||||
-rw-r--r-- | src/testdir/test_registers.vim | 7 | ||||
-rw-r--r-- | src/version.c | 2 |
3 files changed, 10 insertions, 1 deletions
diff --git a/src/evalfunc.c b/src/evalfunc.c index e4f28edb7..112a2e70b 100644 --- a/src/evalfunc.c +++ b/src/evalfunc.c @@ -8415,7 +8415,7 @@ f_getreginfo(typval_T *argvars, typval_T *rettv) if (item != NULL) { - item->di_tv.v_type = VAR_SPECIAL; + item->di_tv.v_type = VAR_BOOL; item->di_tv.vval.v_number = regname == buf[0] ? VVAL_TRUE : VVAL_FALSE; (void)dict_add(dict, item); diff --git a/src/testdir/test_registers.vim b/src/testdir/test_registers.vim index 35bd1e0a3..e96693247 100644 --- a/src/testdir/test_registers.vim +++ b/src/testdir/test_registers.vim @@ -520,6 +520,13 @@ func Test_get_reginfo() nunmap <F2> unlet g:RegInfo + " The type of "isunnamed" was VAR_SPECIAL but should be VAR_BOOL. Can only + " be noticed when using json_encod(). + call setreg('a', 'foo') + let reginfo = getreginfo('a') + let expected = #{regcontents: ['foo'], isunnamed: v:false, regtype: 'v'} + call assert_equal(json_encode(expected), json_encode(reginfo)) + bwipe! endfunc diff --git a/src/version.c b/src/version.c index 42a7e46b6..d7c6ef1e8 100644 --- a/src/version.c +++ b/src/version.c @@ -696,6 +696,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 936, +/**/ 935, /**/ 934, |