summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarc Espie <espie@cvs.openbsd.org>2012-09-14 14:18:51 +0000
committerMarc Espie <espie@cvs.openbsd.org>2012-09-14 14:18:51 +0000
commit83df9bbd8bd7664e7ae2fb0a9202e368894e7020 (patch)
tree6aacef2a38bd70b582069aed59d3d64e79508bbb
parent64da2d92ad38caee899d35cd2ec160517dae069d (diff)
more accurate fix: don't mark '!' as a meta character, recognize "!" as
a shell reserved word. okay millert@
-rw-r--r--usr.bin/make/engine.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/usr.bin/make/engine.c b/usr.bin/make/engine.c
index cc6cb79ee59..99d8924f91e 100644
--- a/usr.bin/make/engine.c
+++ b/usr.bin/make/engine.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: engine.c,v 1.31 2012/09/14 08:46:39 espie Exp $ */
+/* $OpenBSD: engine.c,v 1.32 2012/09/14 14:18:50 espie Exp $ */
/*
* Copyright (c) 1988, 1989, 1990 The Regents of the University of California.
* Copyright (c) 1988, 1989 by Adam de Boor
@@ -517,7 +517,7 @@ setup_meta(void)
{
char *p;
- for (p = "#!=|^(){};&<>*?[]:$`\\\n"; *p != '\0'; p++)
+ for (p = "#=|^(){};&<>*?[]:$`\\\n"; *p != '\0'; p++)
meta[(unsigned char) *p] = 1;
/* The null character serves as a sentinel in the string. */
meta[0] = 1;
@@ -527,7 +527,7 @@ static char **
recheck_command_for_shell(char **av)
{
char *runsh[] = {
- "alias", "cd", "eval", "exit", "read", "set", "ulimit",
+ "!", "alias", "cd", "eval", "exit", "read", "set", "ulimit",
"unalias", "unset", "wait", "umask", NULL
};