From: Bram Moolenaar Date: Wed, 2 Sep 2020 19:37:56 +0000 (+0200) Subject: patch 8.2.1572: Vim9: expand() does not take "true" as argument X-Git-Tag: v8.2.1572 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=551d25e76545df785a9f62df52f34bc1dd368bfb;p=vim patch 8.2.1572: Vim9: expand() does not take "true" as argument Problem: Vim9: expand() does not take "true" as argument. Solution: Use tv_get_bool_chk(). (closes #6819) --- diff --git a/src/evalfunc.c b/src/evalfunc.c index 771e393db..69f781632 100644 --- a/src/evalfunc.c +++ b/src/evalfunc.c @@ -2434,7 +2434,7 @@ f_expand(typval_T *argvars, typval_T *rettv) rettv->v_type = VAR_STRING; if (argvars[1].v_type != VAR_UNKNOWN && argvars[2].v_type != VAR_UNKNOWN - && tv_get_number_chk(&argvars[2], &error) + && tv_get_bool_chk(&argvars[2], &error) && !error) rettv_list_set(rettv, NULL); @@ -2458,7 +2458,7 @@ f_expand(typval_T *argvars, typval_T *rettv) // When the optional second argument is non-zero, don't remove matches // for 'wildignore' and don't put matches for 'suffixes' at the end. if (argvars[1].v_type != VAR_UNKNOWN - && tv_get_number_chk(&argvars[1], &error)) + && tv_get_bool_chk(&argvars[1], &error)) options |= WILD_KEEP_ALL; if (!error) { diff --git a/src/testdir/test_vim9_func.vim b/src/testdir/test_vim9_func.vim index 8f4928ac0..cf48ba866 100644 --- a/src/testdir/test_vim9_func.vim +++ b/src/testdir/test_vim9_func.vim @@ -1497,6 +1497,12 @@ def Test_count() assert_equal(0, count('ABC ABC ABC', 'b', false)) enddef +def Test_expand() + split SomeFile + assert_equal(['SomeFile'], expand('%', true, true)) + close +enddef + def Test_recursive_call() assert_equal(6765, Fibonacci(20)) enddef diff --git a/src/version.c b/src/version.c index 9399221cd..c674148ee 100644 --- a/src/version.c +++ b/src/version.c @@ -754,6 +754,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 1572, /**/ 1571, /**/