aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarco Hinz <mh.codebro@gmail.com>2014-04-14 14:25:15 +0200
committerThiago de Arruda <tpadilha84@gmail.com>2014-04-16 09:38:01 -0300
commit54f425adc5ecf2b6601a4d7bac25fb0a05902633 (patch)
tree23f0d80a5d6d5d65ad370e20a1ad9fb5e7f45600
parent0e1e9148a3b8d33bf74ebee9e88f22f69f723072 (diff)
downloadrneovim-54f425adc5ecf2b6601a4d7bac25fb0a05902633.tar.gz
rneovim-54f425adc5ecf2b6601a4d7bac25fb0a05902633.tar.bz2
rneovim-54f425adc5ecf2b6601a4d7bac25fb0a05902633.zip
vim-patch:7.4.233
Problem: Escaping special characters for using "%" with a shell command is inconsistant: parentheses are escaped but spaces are not. Solution: Only escape "!". (Gary Johnson) https://code.google.com/p/vim/source/detail?r=22a1d5762ba3a75984e89dcc47a65498f63a6c2c
-rw-r--r--src/ex_docmd.c12
-rw-r--r--src/version.c2
2 files changed, 3 insertions, 11 deletions
diff --git a/src/ex_docmd.c b/src/ex_docmd.c
index 225bc747b8..e4041cf862 100644
--- a/src/ex_docmd.c
+++ b/src/ex_docmd.c
@@ -3704,21 +3704,13 @@ int expand_filename(exarg_T *eap, char_u **cmdlinep, char_u **errormsgp)
/* For a shell command a '!' must be escaped. */
if ((eap->usefilter || eap->cmdidx == CMD_bang)
- && vim_strpbrk(repl, (char_u *)"!&;()<>") != NULL) {
+ && vim_strpbrk(repl, (char_u *)"!") != NULL) {
char_u *l;
- l = vim_strsave_escaped(repl, (char_u *)"!&;()<>");
+ l = vim_strsave_escaped(repl, (char_u *)"!");
if (l != NULL) {
vim_free(repl);
repl = l;
- /* For a sh-like shell escape "!" another time. */
- if (strstr((char *)p_sh, "sh") != NULL) {
- l = vim_strsave_escaped(repl, (char_u *)"!");
- if (l != NULL) {
- vim_free(repl);
- repl = l;
- }
- }
}
}
diff --git a/src/version.c b/src/version.c
index 5113ad3e27..15410fb166 100644
--- a/src/version.c
+++ b/src/version.c
@@ -228,7 +228,7 @@ static int included_patches[] = {
//236,
//235,
//234,
- //233,
+ 233,
232,
//231,
//230,