aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJan Edmund Lazo <jan.lazo@mail.utoronto.ca>2019-05-20 13:34:48 -0400
committerJan Edmund Lazo <jan.lazo@mail.utoronto.ca>2019-05-20 19:07:15 -0400
commit7c979f972ede6c47b734fe547873848de438ba54 (patch)
treea74ecfc9d4545bcfc83e4ecc3c7a1d9b7599a29d /src
parent783aa6b507bc40565c0b7dbd146beaa7645e72c5 (diff)
downloadrneovim-7c979f972ede6c47b734fe547873848de438ba54.tar.gz
rneovim-7c979f972ede6c47b734fe547873848de438ba54.tar.bz2
rneovim-7c979f972ede6c47b734fe547873848de438ba54.zip
vim-patch:8.0.1519: getchangelist() does not use argument as bufname()
Problem: Getchangelist() does not use argument as bufname(). Solution: Use get_buf_tv(). (Yegappan Lakshmanan, closes vim/vim#2641) https://github.com/vim/vim/commit/341a64c9cabff08e4a7dc8cd932a598e12134457
Diffstat (limited to 'src')
-rw-r--r--src/nvim/eval.c5
-rw-r--r--src/nvim/testdir/test_changelist.vim6
2 files changed, 7 insertions, 4 deletions
diff --git a/src/nvim/eval.c b/src/nvim/eval.c
index 7229b2f977..de510a8bca 100644
--- a/src/nvim/eval.c
+++ b/src/nvim/eval.c
@@ -9551,7 +9551,10 @@ f_getbufvar_end:
static void f_getchangelist(typval_T *argvars, typval_T *rettv, FunPtr fptr)
{
tv_list_alloc_ret(rettv, 2);
- const buf_T *const buf = find_buffer(&argvars[0]);
+ vim_ignored = tv_get_number(&argvars[0]); // issue errmsg if type error
+ emsg_off++;
+ const buf_T *const buf = tv_get_buf(&argvars[0], false);
+ emsg_off--;
if (buf == NULL) {
return;
}
diff --git a/src/nvim/testdir/test_changelist.vim b/src/nvim/testdir/test_changelist.vim
index 0880fce840..dd6ea9600c 100644
--- a/src/nvim/testdir/test_changelist.vim
+++ b/src/nvim/testdir/test_changelist.vim
@@ -9,7 +9,7 @@ func Test_getchangelist()
bwipe!
enew
call assert_equal([], getchangelist(10))
- call assert_equal([[], 0], getchangelist(bufnr('%')))
+ call assert_equal([[], 0], getchangelist('%'))
call writefile(['line1', 'line2', 'line3'], 'Xfile1.txt')
call writefile(['line1', 'line2', 'line3'], 'Xfile2.txt')
@@ -23,7 +23,7 @@ func Test_getchangelist()
\ {'lnum' : 2, 'col' : 4, 'coladd' : 0},
\ {'lnum' : 4, 'col' : 4, 'coladd' : 0},
\ {'lnum' : 6, 'col' : 4, 'coladd' : 0}], 2],
- \ getchangelist(bufnr('%')))
+ \ getchangelist('%'))
hide edit Xfile2.txt
exe "normal 1GOline\<C-G>u1.0"
@@ -31,7 +31,7 @@ func Test_getchangelist()
call assert_equal([[
\ {'lnum' : 1, 'col' : 6, 'coladd' : 0},
\ {'lnum' : 3, 'col' : 6, 'coladd' : 0}], 2],
- \ getchangelist(bufnr('%')))
+ \ getchangelist('%'))
hide enew
call assert_equal([[