summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Andersen2001-07-05 05:24:12 +0000
committerEric Andersen2001-07-05 05:24:12 +0000
commit8df319b2139d292238c3b97f5551ccac6957d394 (patch)
tree036cd05b59e88142dd2e4e2c17272407adfcb37b
parented8495990a923910deeddd0aa5bda0ed1cbc6747 (diff)
downloadbusybox-8df319b2139d292238c3b97f5551ccac6957d394.zip
busybox-8df319b2139d292238c3b97f5551ccac6957d394.tar.gz
A bit of testing today showed that ASH_BBAPPS_AS_BUILTINS was
totally breaking the shell. Simple thinge like 'FOO=100' caused it to segfault. It turns out that disabling "bltincmd" is a very bad idea. -Erik
-rw-r--r--ash.c8
-rw-r--r--shell/ash.c8
2 files changed, 4 insertions, 12 deletions
diff --git a/ash.c b/ash.c
index 489ccaa..e7f3516 100644
--- a/ash.c
+++ b/ash.c
@@ -1638,9 +1638,7 @@ static int bgcmd (int, char **);
static int fgcmd (int, char **);
static int killcmd (int, char **);
#endif
-#ifdef ASH_BBAPPS_AS_BUILTINS
static int bltincmd (int, char **);
-#endif
static int cdcmd (int, char **);
static int breakcmd (int, char **);
#ifdef ASH_CMDCMD
@@ -1727,9 +1725,7 @@ static const struct builtincmd builtincmds[] = {
{ BUILTIN_REGULAR "bg", bgcmd },
#endif
{ BUILTIN_SPECIAL "break", breakcmd },
-#ifdef ASH_BBAPPS_AS_BUILTINS
- { BUILTIN_SPECIAL "builtin", bltincmd },
-#endif
+ { BUILTIN_SPECIAL "builtin", bltincmd }, /* Do not disable this builtin ever or bad things happen */
{ BUILTIN_REGULAR "cd", cdcmd },
#ifdef ASH_BBAPPS_AS_BUILTINS
{ BUILTIN_NOSPEC "chdir", cdcmd },
@@ -13532,7 +13528,7 @@ findvar(struct var **vpp, const char *name)
/*
* Copyright (c) 1999 Herbert Xu <herbert@debian.org>
* This file contains code for the times builtin.
- * $Id: ash.c,v 1.4 2001/07/02 17:27:21 andersen Exp $
+ * $Id: ash.c,v 1.5 2001/07/05 05:24:12 andersen Exp $
*/
static int timescmd (int argc, char **argv)
{
diff --git a/shell/ash.c b/shell/ash.c
index 489ccaa..e7f3516 100644
--- a/shell/ash.c
+++ b/shell/ash.c
@@ -1638,9 +1638,7 @@ static int bgcmd (int, char **);
static int fgcmd (int, char **);
static int killcmd (int, char **);
#endif
-#ifdef ASH_BBAPPS_AS_BUILTINS
static int bltincmd (int, char **);
-#endif
static int cdcmd (int, char **);
static int breakcmd (int, char **);
#ifdef ASH_CMDCMD
@@ -1727,9 +1725,7 @@ static const struct builtincmd builtincmds[] = {
{ BUILTIN_REGULAR "bg", bgcmd },
#endif
{ BUILTIN_SPECIAL "break", breakcmd },
-#ifdef ASH_BBAPPS_AS_BUILTINS
- { BUILTIN_SPECIAL "builtin", bltincmd },
-#endif
+ { BUILTIN_SPECIAL "builtin", bltincmd }, /* Do not disable this builtin ever or bad things happen */
{ BUILTIN_REGULAR "cd", cdcmd },
#ifdef ASH_BBAPPS_AS_BUILTINS
{ BUILTIN_NOSPEC "chdir", cdcmd },
@@ -13532,7 +13528,7 @@ findvar(struct var **vpp, const char *name)
/*
* Copyright (c) 1999 Herbert Xu <herbert@debian.org>
* This file contains code for the times builtin.
- * $Id: ash.c,v 1.4 2001/07/02 17:27:21 andersen Exp $
+ * $Id: ash.c,v 1.5 2001/07/05 05:24:12 andersen Exp $
*/
static int timescmd (int argc, char **argv)
{