patch 7.4.1454
Problem: The exit callback test is flaky.
Solution: Loop to wait for a short time up to a second.
diff --git a/src/testdir/test_channel.vim b/src/testdir/test_channel.vim
index b214fa9..0fded01 100644
--- a/src/testdir/test_channel.vim
+++ b/src/testdir/test_channel.vim
@@ -535,14 +535,21 @@
func Test_exit_callback()
if has('job')
+ call ch_log('Test_exit_callback()')
call s:run_server('s:test_exit_callback')
- " the job may take a little while to exit
- sleep 50m
+ " wait up to a second for the job to exit
+ for i in range(100)
+ if s:job_exit_ret == 'done'
+ break
+ endif
+ sleep 10m
+ " calling job_status() triggers the callback
+ call job_status(s:exit_job)
+ endfor
- " calling job_status() triggers the callback
- call job_status(s:exit_job)
call assert_equal('done', s:job_exit_ret)
+ unlet s:exit_job
endif
endfunc
@@ -571,3 +578,5 @@
call s:run_server('s:test_close_callback')
endfunc
+" Uncomment this to see what happens, output is in src/testdir/channellog.
+" call ch_logfile('channellog', 'w')
diff --git a/src/version.c b/src/version.c
index 991af8d..2c21470 100644
--- a/src/version.c
+++ b/src/version.c
@@ -744,6 +744,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1454,
+/**/
1453,
/**/
1452,