diff options
author | Bram Moolenaar <Bram@vim.org> | 2016-07-30 23:14:28 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2016-07-30 23:14:28 +0200 |
commit | 31440a1f2b6ae8a2f7ffdd4a8a3661eadc4df23c (patch) | |
tree | ae2e66c08b770e8e9e1b39db369867446a9f9e0b /src/testdir | |
parent | 57e69ff2cca9edee3546373d04e0dde6810309e5 (diff) | |
download | vim-31440a1f2b6ae8a2f7ffdd4a8a3661eadc4df23c.zip |
patch 7.4.2132
Problem: test_partial has memory leaks reported.
Solution: Add a note about why this happens.
Diffstat (limited to 'src/testdir')
-rw-r--r-- | src/testdir/test_partial.vim | 41 |
1 files changed, 22 insertions, 19 deletions
diff --git a/src/testdir/test_partial.vim b/src/testdir/test_partial.vim index b43f34902..6b098c2dd 100644 --- a/src/testdir/test_partial.vim +++ b/src/testdir/test_partial.vim @@ -1,4 +1,26 @@ " 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 @@ -271,25 +293,6 @@ func Test_cycle_partial_job() endif endfunc -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 Test_ref_job_partial_dict() if has('job') let g:ref_job = job_start('echo') |