summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2016-01-25 20:38:30 +0100
committerBram Moolenaar <Bram@vim.org>2016-01-25 20:38:30 +0100
commitf4f79b84a5595c511f6fdbe4e3e1d188d97879a0 (patch)
tree707d55a7105f6ccb95c01f61759f54cb264323a7
parent767d8c1a1ae762ecf47297c168b8c23caf05d30a (diff)
downloadvim-git-f4f79b84a5595c511f6fdbe4e3e1d188d97879a0.tar.gz
patch 7.4.1179v7.4.1179
Problem: test_writefile and test_viml do not delete the tempfile. Solution: Delete the tempfile. (Charles Cooper) Add DeleteTheScript().
-rw-r--r--src/testdir/test_viml.vim21
-rw-r--r--src/testdir/test_writefile.in1
-rw-r--r--src/version.c2
3 files changed, 20 insertions, 4 deletions
diff --git a/src/testdir/test_viml.vim b/src/testdir/test_viml.vim
index 6b2b6b988..3c140c84d 100644
--- a/src/testdir/test_viml.vim
+++ b/src/testdir/test_viml.vim
@@ -55,16 +55,26 @@ endfunction
" ExecAsScript - Source a temporary script made from a function. {{{2
"
" Make a temporary script file from the function a:funcname, ":source" it, and
-" delete it afterwards.
+" delete it afterwards. However, if an exception is thrown the file may remain,
+" the caller should call DeleteTheScript() afterwards.
+let s:script_name = ''
function! ExecAsScript(funcname)
" Make a script from the function passed as argument.
- let script = MakeScript(a:funcname)
+ let s:script_name = MakeScript(a:funcname)
" Source and delete the script.
- exec "source" script
- call delete(script)
+ exec "source" s:script_name
+ call delete(s:script_name)
+ let s:script_name = ''
endfunction
+function! DeleteTheScript()
+ if s:script_name
+ call delete(s:script_name)
+ let s:script_name = ''
+ endif
+endfunc
+
com! -nargs=1 -bar ExecAsScript call ExecAsScript(<f-args>)
@@ -143,6 +153,7 @@ func Test_endwhile_script()
XpathINIT
ExecAsScript T1_F
Xpath 'F'
+ call DeleteTheScript()
try
ExecAsScript T1_G
@@ -152,6 +163,7 @@ func Test_endwhile_script()
Xpath 'x'
endtry
Xpath 'G'
+ call DeleteTheScript()
call assert_equal('abcFhijxG', g:Xpath)
endfunc
@@ -260,6 +272,7 @@ function Test_finish()
XpathINIT
ExecAsScript T4_F
Xpath '5'
+ call DeleteTheScript()
call assert_equal('ab3e3b2c25', g:Xpath)
endfunction
diff --git a/src/testdir/test_writefile.in b/src/testdir/test_writefile.in
index f2dc7d50b..6b354c510 100644
--- a/src/testdir/test_writefile.in
+++ b/src/testdir/test_writefile.in
@@ -13,6 +13,7 @@ STARTTEST
:$put =readfile(f)
:1 delete _
:w! test.out
+:call delete(f)
:qa!
ENDTEST
diff --git a/src/version.c b/src/version.c
index 0a0bc1d17..073f551dd 100644
--- a/src/version.c
+++ b/src/version.c
@@ -747,6 +747,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1179,
+/**/
1178,
/**/
1177,