From 2df47310422f4a77e85de7901a5299923a1addd3 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Sat, 5 Sep 2020 17:30:44 +0200 Subject: [PATCH] patch 8.2.1601: Vim9: cannot use 'true" with garbagecollect() Problem: Vim9: cannot use 'true" with garbagecollect(). Solution: Use tv_get_bool(). (closes #6871) --- src/evalfunc.c | 2 +- src/testdir/test_vim9_func.vim | 4 ++++ src/version.c | 2 ++ 3 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/evalfunc.c b/src/evalfunc.c index 1764f414e..aefb1bf4b 100644 --- a/src/evalfunc.c +++ b/src/evalfunc.c @@ -2936,7 +2936,7 @@ f_garbagecollect(typval_T *argvars, typval_T *rettv UNUSED) // using Lists and Dicts internally. E.g.: ":echo [garbagecollect()]". want_garbage_collect = TRUE; - if (argvars[0].v_type != VAR_UNKNOWN && tv_get_number(&argvars[0]) == 1) + if (argvars[0].v_type != VAR_UNKNOWN && tv_get_bool(&argvars[0]) == 1) garbage_collect_at_exit = TRUE; } diff --git a/src/testdir/test_vim9_func.vim b/src/testdir/test_vim9_func.vim index 8651ef8eb..7cc323c1e 100644 --- a/src/testdir/test_vim9_func.vim +++ b/src/testdir/test_vim9_func.vim @@ -1285,6 +1285,10 @@ def Test_extend_return_type() assert_equal(6, res) enddef +def Test_garbagecollect() + garbagecollect(true) +enddef + def Test_insert_return_type() let l = insert([2, 1], 3) let res = 0 diff --git a/src/version.c b/src/version.c index 8ebf9a716..ab9c0c41d 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 */ +/**/ + 1601, /**/ 1600, /**/ -- 2.40.0