patch 8.2.4879: screendump test may fail when using valgrind
Problem: Screendump test may fail when using valgrind.
Solution: Wait longer for the first screendump.
diff --git a/src/testdir/screendump.vim b/src/testdir/screendump.vim
index 8fc496d..d872a80 100644
--- a/src/testdir/screendump.vim
+++ b/src/testdir/screendump.vim
@@ -15,15 +15,18 @@
" Verify that Vim running in terminal buffer "buf" matches the screen dump.
" "options" is passed to term_dumpwrite().
+" Additionally, the "wait" entry can specify the maximum time to wait for the
+" screen dump to match in msec (default 1000 msec).
" The file name used is "dumps/{filename}.dump".
" Optionally an extra argument can be passed which is prepended to the error
" message. Use this when using the same dump file with different options.
-" Will wait for up to a second for the screen dump to match.
" Returns non-zero when verification fails.
func VerifyScreenDump(buf, filename, options, ...)
let reference = 'dumps/' . a:filename . '.dump'
let testfile = 'failed/' . a:filename . '.dump'
+ let max_loops = get(a:options, 'wait', 1000) / 10
+
" Starting a terminal to make a screendump is always considered flaky.
let g:test_is_flaky = 1
@@ -60,7 +63,7 @@
endif
break
endif
- if i == 100
+ if i == max_loops
" Leave the failed dump around for inspection.
if filereadable(reference)
let msg = 'See dump file difference: call term_dumpdiff("testdir/' .. testfile .. '", "testdir/' .. reference .. '")'
diff --git a/src/testdir/test_vim9_builtin.vim b/src/testdir/test_vim9_builtin.vim
index 41093f0..b463743 100644
--- a/src/testdir/test_vim9_builtin.vim
+++ b/src/testdir/test_vim9_builtin.vim
@@ -4552,7 +4552,8 @@
END
call writefile(lines, 'Xgotoscript')
let buf = RunVimInTerminal('-S Xgotoscript', #{rows: 15, wait_for_ruler: 0})
- call VerifyScreenDump(buf, 'Test_win_gotoid_1', {})
+ " wait longer here, since we didn't wait for the ruler
+ call VerifyScreenDump(buf, 'Test_win_gotoid_1', #{wait: 3000})
call term_sendkeys(buf, "3Gvl")
call VerifyScreenDump(buf, 'Test_win_gotoid_2', {})
diff --git a/src/version.c b/src/version.c
index 30f420b..5a597a8 100644
--- a/src/version.c
+++ b/src/version.c
@@ -747,6 +747,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 4879,
+/**/
4878,
/**/
4877,