diff options
-rw-r--r-- | src/Makefile | 1 | ||||
-rw-r--r-- | src/testdir/Make_all.mak | 1 | ||||
-rw-r--r-- | src/testdir/test_job_fails.vim | 19 | ||||
-rw-r--r-- | src/testdir/test_partial.vim | 22 | ||||
-rw-r--r-- | src/version.c | 2 |
5 files changed, 23 insertions, 22 deletions
diff --git a/src/Makefile b/src/Makefile index 273fc9ea9..355965999 100644 --- a/src/Makefile +++ b/src/Makefile @@ -2086,6 +2086,7 @@ test_arglist \ test_history \ test_increment \ test_increment_dbcs \ + test_job_fails \ test_join \ test_json \ test_jumps \ diff --git a/src/testdir/Make_all.mak b/src/testdir/Make_all.mak index 9493ccb40..0ff00660c 100644 --- a/src/testdir/Make_all.mak +++ b/src/testdir/Make_all.mak @@ -176,6 +176,7 @@ NEW_TESTS = test_arglist.res \ test_history.res \ test_increment.res \ test_increment_dbcs.res \ + test_job_fails.res \ test_json.res \ test_langmap.res \ test_man.res \ diff --git a/src/testdir/test_job_fails.vim b/src/testdir/test_job_fails.vim new file mode 100644 index 000000000..ddab6a316 --- /dev/null +++ b/src/testdir/test_job_fails.vim @@ -0,0 +1,19 @@ +" This test is in a separate file, because it usually causes reports for memory +" leaks under valgrind. That is because when fork/exec fails memory is not +" freed. Since the process exists right away it's not a real leak. + +source shared.vim + +func Test_job_start_fails() + if has('job') + let g:job = job_start('axdfxsdf') + if has('unix') + call WaitFor('job_status(g:job) == "dead"') + call assert_equal('dead', job_status(g:job)) + else + call WaitFor('job_status(g:job) == "fail"') + call assert_equal('fail', job_status(g:job)) + endif + unlet g:job + endif +endfunc diff --git a/src/testdir/test_partial.vim b/src/testdir/test_partial.vim index 6b098c2dd..48c7697b4 100644 --- a/src/testdir/test_partial.vim +++ b/src/testdir/test_partial.vim @@ -1,27 +1,5 @@ " Test binding arguments to a Funcref. -" NOTE: This function may cause memory leaks to be reported. -" That is because when fork/exec fails memory is not freed. Since the process -" exists right away it's not a real leak. -func Test_job_start_fails() - if has('job') - let job = job_start('axdfxsdf') - for i in range(100) - let status = job_status(job) - if status == 'dead' || status == 'fail' - break - endif - sleep 10m - endfor - if has('unix') - call assert_equal('dead', job_status(job)) - else - call assert_equal('fail', job_status(job)) - endif - unlet job - endif -endfunc - func MyFunc(arg1, arg2, arg3) return a:arg1 . '/' . a:arg2 . '/' . a:arg3 endfunc diff --git a/src/version.c b/src/version.c index 17febd056..c5511beeb 100644 --- a/src/version.c +++ b/src/version.c @@ -764,6 +764,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 2157, +/**/ 2156, /**/ 2155, |