diff options
-rw-r--r-- | src/evalfunc.c | 7 | ||||
-rw-r--r-- | src/testdir/test_vim9_func.vim | 33 | ||||
-rw-r--r-- | src/version.c | 2 |
3 files changed, 36 insertions, 6 deletions
diff --git a/src/evalfunc.c b/src/evalfunc.c index fff7a89a9..771e393db 100644 --- a/src/evalfunc.c +++ b/src/evalfunc.c @@ -3081,12 +3081,7 @@ f_getchangelist(typval_T *argvars, typval_T *rettv) if (argvars[0].v_type == VAR_UNKNOWN) buf = curbuf; else - { - (void)tv_get_number(&argvars[0]); // issue errmsg if type error - ++emsg_off; - buf = tv_get_buf(&argvars[0], FALSE); - --emsg_off; - } + buf = tv_get_buf_from_arg(&argvars[0]); if (buf == NULL) return; diff --git a/src/testdir/test_vim9_func.vim b/src/testdir/test_vim9_func.vim index 09c84576d..480a9a5a7 100644 --- a/src/testdir/test_vim9_func.vim +++ b/src/testdir/test_vim9_func.vim @@ -1431,6 +1431,39 @@ def Test_setbufvar() assert_equal(123, getbufvar('%', 'myvar')) enddef +def Test_bufwinid() + let origwin = win_getid() + below split SomeFile + let SomeFileID = win_getid() + below split OtherFile + below split SomeFile + assert_equal(SomeFileID, bufwinid('SomeFile')) + + win_gotoid(origwin) + only + bwipe SomeFile + bwipe OtherFile +enddef + +def Test_getbufline() + e SomeFile + let buf = bufnr() + e # + let lines = ['aaa', 'bbb', 'ccc'] + setbufline(buf, 1, lines) + assert_equal(lines, getbufline('#', 1, '$')) + + bwipe! +enddef + +def Test_getchangelist() + new + setline(1, 'some text') + let changelist = bufnr()->getchangelist() + assert_equal(changelist, getchangelist('%')) + bwipe! +enddef + def Test_setreg() setreg('a', ['aaa', 'bbb', 'ccc']) let reginfo = getreginfo('a') diff --git a/src/version.c b/src/version.c index 840c32535..6d97899c0 100644 --- a/src/version.c +++ b/src/version.c @@ -755,6 +755,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 1569, +/**/ 1568, /**/ 1567, |