vim-patch:8.1.0476: memory leaks in test_escaped_glob (#9127)

Problem:    Memory leaks in test_escaped_glob.
Solution:   Avoid failure when running the shell, use the sandbox.
a2aad02830
This commit is contained in:
Jan Edmund Lazo 2018-10-14 19:23:46 -04:00 committed by Justin M. Keyes
parent e568ac7a68
commit 8fd092f3ff

View File

@ -2,8 +2,6 @@
" characters. " characters.
function SetUp() function SetUp()
" make sure glob() doesn't use the shell
set shell=doesnotexist
" consistent sorting of file names " consistent sorting of file names
set nofileignorecase set nofileignorecase
endfunction endfunction
@ -14,20 +12,23 @@ function Test_glob()
" filenames. Disable the test on non-Unix systems for now. " filenames. Disable the test on non-Unix systems for now.
return return
endif endif
call assert_equal("", glob('Xxx\{'))
call assert_equal("", glob('Xxx\$')) " Execute these commands in the sandbox, so that using the shell fails.
" Setting 'shell' to an invalid name causes a memory leak.
sandbox call assert_equal("", glob('Xxx\{'))
sandbox call assert_equal("", glob('Xxx\$'))
w! Xxx{ w! Xxx{
" } to fix highlighting " } to fix highlighting
w! Xxx\$ w! Xxx\$
call assert_equal("Xxx{", glob('Xxx\{')) sandbox call assert_equal("Xxx{", glob('Xxx\{'))
call assert_equal("Xxx$", glob('Xxx\$')) sandbox call assert_equal("Xxx$", glob('Xxx\$'))
call delete('Xxx{') call delete('Xxx{')
call delete('Xxx$') call delete('Xxx$')
endfunction endfunction
function Test_globpath() function Test_globpath()
call assert_equal(expand("sautest/autoload/globone.vim\nsautest/autoload/globtwo.vim"), sandbox call assert_equal(expand("sautest/autoload/globone.vim\nsautest/autoload/globtwo.vim"),
\ globpath('sautest/autoload', 'glob*.vim')) \ globpath('sautest/autoload', 'glob*.vim'))
call assert_equal([expand('sautest/autoload/globone.vim'), expand('sautest/autoload/globtwo.vim')], sandbox call assert_equal([expand('sautest/autoload/globone.vim'), expand('sautest/autoload/globtwo.vim')],
\ globpath('sautest/autoload', 'glob*.vim', 0, 1)) \ globpath('sautest/autoload', 'glob*.vim', 0, 1))
endfunction endfunction