summaryrefslogtreecommitdiff
path: root/sh.c
diff options
context:
space:
mode:
authorEric Andersen2000-12-11 19:14:40 +0000
committerEric Andersen2000-12-11 19:14:40 +0000
commitb2356f6de94820291f35d63943a622708546b59c (patch)
treebd50b81de4d0c86b1bb73655ac1b511e33041ff0 /sh.c
parent59ec601b8e4db86e1861d12f4efc6d1dbb440e28 (diff)
downloadbusybox-b2356f6de94820291f35d63943a622708546b59c.zip
busybox-b2356f6de94820291f35d63943a622708546b59c.tar.gz
Patch from Matt Kraai to fox sh.c escape problem such that
running things like 'echo "\n\tHi\n\t\!"' and 'echo -e "\n\tHi\n\t\!"' behave as under bash.
Diffstat (limited to 'sh.c')
-rw-r--r--sh.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/sh.c b/sh.c
index 07715d4..9fc215c 100644
--- a/sh.c
+++ b/sh.c
@@ -933,8 +933,10 @@ static int parseCommand(char **commandPtr, struct job *job, struct jobSet *jobLi
}
/* in shell, "\'" should yield \' */
- if (*src != quote)
+ if (*src != quote) {
*buf++ = '\\';
+ *buf++ = '\\';
+ }
} else if (*src == '*' || *src == '?' || *src == '[' ||
*src == ']') *buf++ = '\\';
*buf++ = *src;