summaryrefslogtreecommitdiff
path: root/job.c
diff options
context:
space:
mode:
authorPaul Smith <psmith@gnu.org>2004-01-08 03:17:08 +0000
committerPaul Smith <psmith@gnu.org>2004-01-08 03:17:08 +0000
commit2b3ee46f4e4e73cb3d05921391e5cf64990483a7 (patch)
treeb7f978142e3296ec450be773a516f13e42cef398 /job.c
parenta35db9027526a8cad59c4e139ab224946245a7f7 (diff)
downloadgunmake-2b3ee46f4e4e73cb3d05921391e5cf64990483a7.tar.gz
Enhancements to the documentation (fixes bugs #1772 and 4898).
Add "!" to the list of shell escape characters: POSIX sh allows it to be used to negate the return value of the command.
Diffstat (limited to 'job.c')
-rw-r--r--job.c13
1 files changed, 6 insertions, 7 deletions
diff --git a/job.c b/job.c
index 755c814..4fa9d8f 100644
--- a/job.c
+++ b/job.c
@@ -358,13 +358,12 @@ vms_redirect (struct dsc$descriptor_s *desc, char *fname, char *ibuf)
}
-/*
- found apostrophe at (p-1)
-
- inc p until after closing apostrophe. */
+/* found apostrophe at (p-1)
+ inc p until after closing apostrophe.
+ */
static char *
-handle_apos (char *p)
+vms_handle_apos (char *p)
{
int alast;
int inside;
@@ -2160,7 +2159,7 @@ child_execute_job (char *argv, struct child *child)
/* Nice places for line breaks are after strings, after
comma or space and before slash. */
case '"':
- q = handle_apos (q + 1);
+ q = vms_handle_apos (q + 1);
sep = q;
break;
case ',':
@@ -2695,7 +2694,7 @@ construct_command_argv_internal (char *line, char **restp, char *shell,
char* sh_chars;
char** sh_cmds;
#else /* must be UNIX-ish */
- static char sh_chars[] = "#;\"*?[]&|<>(){}$`^~";
+ static char sh_chars[] = "#;\"*?[]&|<>(){}$`^~!";
static char *sh_cmds[] = { "cd", "eval", "exec", "exit", "login",
"logout", "set", "umask", "wait", "while", "for",
"case", "if", ":", ".", "break", "continue",