1
0
forked from aniani/vim

patch 8.0.0625: shellescape() always escapes a newline

Problem:    shellescape() always escapes a newline, which does not work with
            some shells. (Harm te Hennepe)
Solution:   Only escape a newline when the "special" argument is non-zero.
            (Christian Brabandt, closes #1590)
This commit is contained in:
Bram Moolenaar
2017-06-05 18:46:26 +02:00
parent 6c95fbc9ae
commit 206155280d
3 changed files with 30 additions and 1 deletions

View File

@@ -10461,8 +10461,10 @@ f_sha256(typval_T *argvars, typval_T *rettv)
static void
f_shellescape(typval_T *argvars, typval_T *rettv)
{
int do_special = non_zero_arg(&argvars[1]);
rettv->vval.v_string = vim_strsave_shellescape(
get_tv_string(&argvars[0]), non_zero_arg(&argvars[1]), TRUE);
get_tv_string(&argvars[0]), do_special, do_special);
rettv->v_type = VAR_STRING;
}