summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/channel.c10
-rw-r--r--src/version.c2
2 files changed, 12 insertions, 0 deletions
diff --git a/src/channel.c b/src/channel.c
index 8f70da276..99f053a2f 100644
--- a/src/channel.c
+++ b/src/channel.c
@@ -3625,7 +3625,17 @@ job_start(typval_T *argvars)
/* Only escape when needed, double quotes are not always allowed. */
if (li != l->lv_first && vim_strpbrk(s, (char_u *)" \t\"") != NULL)
{
+# ifdef WIN32
+ int old_ssl = p_ssl;
+
+ /* This is using CreateProcess, not cmd.exe. Always use
+ * double quote and backslashes. */
+ p_ssl = 0;
+# endif
s = vim_strsave_shellescape(s, FALSE, TRUE);
+# ifdef WIN32
+ p_ssl = old_ssl;
+# endif
if (s == NULL)
goto theend;
ga_concat(&ga, s);
diff --git a/src/version.c b/src/version.c
index 2eb011484..f907012ab 100644
--- a/src/version.c
+++ b/src/version.c
@@ -744,6 +744,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1544,
+/**/
1543,
/**/
1542,