patch 8.2.1241: cannot use getbufinfo() as a method
Problem: Cannot use getbufinfo() as a method.
Solution: Support using getbufinfo() as a method. (closes #6458)
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index 38b2783..5be18bd 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -4929,8 +4929,11 @@
<
To get buffer-local options use: >
getbufvar({bufnr}, '&option_name')
-
<
+ Can also be used as a |method|: >
+ GetBufnr()->getbufinfo()
+<
+
*getbufline()*
getbufline({expr}, {lnum} [, {end}])
Return a |List| with the lines starting from {lnum} to {end}
diff --git a/src/evalfunc.c b/src/evalfunc.c
index 3f38fa7..5de49c5 100644
--- a/src/evalfunc.c
+++ b/src/evalfunc.c
@@ -611,7 +611,7 @@
{"function", 1, 3, FEARG_1, ret_f_function, f_function},
{"garbagecollect", 0, 1, 0, ret_void, f_garbagecollect},
{"get", 2, 3, FEARG_1, ret_any, f_get},
- {"getbufinfo", 0, 1, 0, ret_list_dict_any, f_getbufinfo},
+ {"getbufinfo", 0, 1, FEARG_1, ret_list_dict_any, f_getbufinfo},
{"getbufline", 2, 3, FEARG_1, ret_list_string, f_getbufline},
{"getbufvar", 2, 3, FEARG_1, ret_any, f_getbufvar},
{"getchangelist", 0, 1, FEARG_1, ret_list_any, f_getchangelist},
diff --git a/src/testdir/test_bufwintabinfo.vim b/src/testdir/test_bufwintabinfo.vim
index 43d0473..eafadff 100644
--- a/src/testdir/test_bufwintabinfo.vim
+++ b/src/testdir/test_bufwintabinfo.vim
@@ -23,6 +23,9 @@
call assert_equal('vim', l[0].variables.editor)
call assert_notequal(-1, index(l[0].windows, '%'->bufwinid()))
+ let l = '%'->getbufinfo()
+ call assert_equal(bufnr('%'), l[0].bufnr)
+
" Test for getbufinfo() with 'bufmodified'
call assert_equal(0, len(getbufinfo({'bufmodified' : 1})))
call setbufline('Xtestfile1', 1, ["Line1"])
diff --git a/src/version.c b/src/version.c
index 1b16ffb..2d0fbb2 100644
--- a/src/version.c
+++ b/src/version.c
@@ -755,6 +755,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1241,
+/**/
1240,
/**/
1239,