patch 8.2.1573: Vim9: getreg() does not take "true" as argument
Problem: Vim9: getreg() does not take "true" as argument.
Solution: Use tv_get_bool_chk(). (closes #6820)
diff --git a/src/evalfunc.c b/src/evalfunc.c
index 69f7816..340ecf0 100644
--- a/src/evalfunc.c
+++ b/src/evalfunc.c
@@ -3336,9 +3336,9 @@
error = strregname == NULL;
if (argvars[1].v_type != VAR_UNKNOWN)
{
- arg2 = (int)tv_get_number_chk(&argvars[1], &error);
+ arg2 = (int)tv_get_bool_chk(&argvars[1], &error);
if (!error && argvars[2].v_type != VAR_UNKNOWN)
- return_list = (int)tv_get_number_chk(&argvars[2], &error);
+ return_list = (int)tv_get_bool_chk(&argvars[2], &error);
}
}
else
diff --git a/src/testdir/test_vim9_func.vim b/src/testdir/test_vim9_func.vim
index cf48ba8..8d8e0d4 100644
--- a/src/testdir/test_vim9_func.vim
+++ b/src/testdir/test_vim9_func.vim
@@ -1503,6 +1503,12 @@
close
enddef
+def Test_getreg()
+ let lines = ['aaa', 'bbb', 'ccc']
+ setreg('a', lines)
+ assert_equal(lines, getreg('a', true, true))
+enddef
+
def Test_recursive_call()
assert_equal(6765, Fibonacci(20))
enddef
diff --git a/src/version.c b/src/version.c
index c674148..886cd4e 100644
--- a/src/version.c
+++ b/src/version.c
@@ -755,6 +755,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1573,
+/**/
1572,
/**/
1571,