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,
