diff options
Diffstat (limited to 'winsup/cygwin/spawn.cc')
-rw-r--r-- | winsup/cygwin/spawn.cc | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/winsup/cygwin/spawn.cc b/winsup/cygwin/spawn.cc index 097ecedc9..211c15c04 100644 --- a/winsup/cygwin/spawn.cc +++ b/winsup/cygwin/spawn.cc @@ -483,7 +483,12 @@ spawn_guts (HANDLE hToken, const char * prog_arg, const char *const *argv, for (; (p = strpbrk (a, "\"\\")); a = ++p) { one_line.add (a, p - a); - if ((*p == '\\' && p[1] == '"') || *p == '"') + if (*p == '\\' && p[1] == '\\') + { + one_line.add ("\\\\\\", 3); + p++; + } + else if ((*p == '\\' && p[1] == '"') || *p == '"') one_line.add ("\\", 1); one_line.add (p, 1); } |