aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/testing.c
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2022-10-27 13:08:01 +0800
committerzeertzjq <zeertzjq@outlook.com>2022-10-27 13:10:33 +0800
commit762ca67091d13336f90350a15e0a1b965d6d5c01 (patch)
tree4efcd2a9392b1cdfc3484eb712307c227c6d4667 /src/nvim/testing.c
parent25cf4f2fc712530a65dc3b533508c36d0439b728 (diff)
downloadrneovim-762ca67091d13336f90350a15e0a1b965d6d5c01.tar.gz
rneovim-762ca67091d13336f90350a15e0a1b965d6d5c01.tar.bz2
rneovim-762ca67091d13336f90350a15e0a1b965d6d5c01.zip
vim-patch:8.2.4234: test_garbagecollect_now() does not check v:testing
Problem: test_garbagecollect_now() does not check v:testing as documented. Solution: Give an error if v:testing is not set. https://github.com/vim/vim/commit/b3d83980d2ac0f7a25314270416f17af874ca269 Co-authored-by: Bram Moolenaar <Bram@vim.org>
Diffstat (limited to 'src/nvim/testing.c')
-rw-r--r--src/nvim/testing.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/nvim/testing.c b/src/nvim/testing.c
index 348d5c6e29..45134db14f 100644
--- a/src/nvim/testing.c
+++ b/src/nvim/testing.c
@@ -14,6 +14,9 @@
# include "testing.c.generated.h"
#endif
+static char e_calling_test_garbagecollect_now_while_v_testing_is_not_set[]
+ = N_("E1142: Calling test_garbagecollect_now() while v:testing is not set");
+
/// Prepare "gap" for an assert error and add the sourcing position.
static void prepare_assert_error(garray_T *gap)
{
@@ -614,7 +617,11 @@ void f_test_garbagecollect_now(typval_T *argvars, typval_T *rettv, EvalFuncData
{
// This is dangerous, any Lists and Dicts used internally may be freed
// while still in use.
- garbage_collect(true);
+ if (!get_vim_var_nr(VV_TESTING)) {
+ emsg(_(e_calling_test_garbagecollect_now_while_v_testing_is_not_set));
+ } else {
+ garbage_collect(true);
+ }
}
/// "test_write_list_log()" function