commit 9ae6b03e7aaf635da5d39c1bd7ff6829cc232acb
parent ba9fcc22ef02c70ffea367bc9fbf22c0dca7c103
Author: zeertzjq <zeertzjq@outlook.com>
Date: Mon, 5 Dec 2022 09:53:31 +0800
vim-patch:8.2.5145: exit test causes spurious valgrind reports
Problem: Exit test causes spurious valgrind reports.
Solution: Skip test. Add CheckNotValgrind.
https://github.com/vim/vim/commit/cf801d4b95180ddaee1bf633ef482232625dd80b
Cherry-pick RunningWithValgrind() from patch 8.2.5136.
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Diffstat:
3 files changed, 15 insertions(+), 0 deletions(-)
diff --git a/src/nvim/testdir/check.vim b/src/nvim/testdir/check.vim
@@ -171,6 +171,14 @@ func CheckNotAsan()
endif
endfunc
+" Command to check for not running under valgrind
+command CheckNotValgrind call CheckNotValgrind()
+func CheckNotValgrind()
+ if RunningWithValgrind()
+ throw 'Skipped: does not work well with valgrind'
+ endif
+endfunc
+
" Command to check for X11 based GUI
command CheckX11BasedGui call CheckX11BasedGui()
func CheckX11BasedGui()
diff --git a/src/nvim/testdir/shared.vim b/src/nvim/testdir/shared.vim
@@ -285,6 +285,12 @@ func GetVimCommand(...)
return cmd
endfunc
+" Return one when it looks like the tests are run with valgrind, which means
+" that everything is much slower.
+func RunningWithValgrind()
+ return GetVimCommand() =~ '\<valgrind\>'
+endfunc
+
" Get the command to run Vim, with --clean instead of "-u NONE".
func GetVimCommandClean()
let cmd = GetVimCommand()
diff --git a/src/nvim/testdir/test_exit.vim b/src/nvim/testdir/test_exit.vim
@@ -117,6 +117,7 @@ func Test_exit_error_reading_input()
CheckNotMSWindows
" The early exit causes memory not to be freed somehow
CheckNotAsan
+ CheckNotValgrind
call writefile([":au VimLeave * call writefile(['l = ' .. v:exiting], 'Xtestout')", ":tabnew", "q:"], 'Xscript', 'b')