diff options
author | Bram Moolenaar <Bram@vim.org> | 2016-08-05 19:31:57 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2016-08-05 19:31:57 +0200 |
commit | 46c4d4ac66aa2b129f4dcec9debfda606f72d4b3 (patch) | |
tree | 74cf9fd7b6f20f4873049fc6bbb2e1e5104d2628 | |
parent | c90f2aedd0a5dc2cc75bc9b5f475f8a3e3fe36b1 (diff) |
patch 7.4.2157v7.4.2157
Problem: Test_job_start_fails() is expected to report memory leaks, making
it hard to see other leaks in test_partial.
Solution: Move Test_job_start_fails() to a separate test file.
-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 273fc9ea99..3559659994 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 9493ccb40e..0ff00660ce 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 0000000000..ddab6a3160 --- /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 6b098c2ddd..48c7697b47 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 17febd0562..c5511beeb3 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, |