diff options
author | Bram Moolenaar <Bram@vim.org> | 2017-03-09 19:21:30 +0100 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2017-03-09 19:21:30 +0100 |
commit | 1ef73e33c9414eb02c229d8234aafd9d481a8856 (patch) | |
tree | ea8c934b8f2e1d109ab7bce70074bf0bde5dda09 /src/testdir/test_diffmode.vim | |
parent | ad2cfb54b78523435b31de7234081ff70a53e736 (diff) | |
download | vim-git-1ef73e33c9414eb02c229d8234aafd9d481a8856.tar.gz |
patch 8.0.0442: patch shell command not well escapedv8.0.0442
Problem: Patch shell command uses double quotes around the argument, which
allows for $HOME to be expanded. (Etienne)
Solution: Use single quotes on Unix. (closes #1543)
Diffstat (limited to 'src/testdir/test_diffmode.vim')
-rw-r--r-- | src/testdir/test_diffmode.vim | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/src/testdir/test_diffmode.vim b/src/testdir/test_diffmode.vim index 73f944bce..c23e8a1da 100644 --- a/src/testdir/test_diffmode.vim +++ b/src/testdir/test_diffmode.vim @@ -318,9 +318,20 @@ func Test_diffpatch() bwipe! new call assert_fails('diffpatch Xpatch', 'E816:') - call setline(1, ['1', '2', '3']) - diffpatch Xpatch - call assert_equal(['1', '2x', '3', '4'], getline(1, '$')) + + for name in ['Xpatch', 'Xpatch$HOME'] + call setline(1, ['1', '2', '3']) + if name != 'Xpatch' + call rename('Xpatch', name) + endif + exe 'diffpatch ' . escape(name, '$') + call assert_equal(['1', '2x', '3', '4'], getline(1, '$')) + if name != 'Xpatch' + call rename(name, 'Xpatch') + endif + bwipe! + endfor + call delete('Xpatch') bwipe! endfunc |