aboutsummaryrefslogtreecommitdiff
path: root/shell
diff options
context:
space:
mode:
authorEric Andersen <andersen@codepoet.org>2002-09-17 08:41:08 +0000
committerEric Andersen <andersen@codepoet.org>2002-09-17 08:41:08 +0000
commitbf8bf105fb9866f35aee0cb835bc972d0056afa3 (patch)
tree49d0cc5c45ede0e61cc9ce632d1f149f9870e426 /shell
parent34fd00af5f70b26562d509f6602fde2957633ea6 (diff)
downloadbusybox-bf8bf105fb9866f35aee0cb835bc972d0056afa3.tar.gz
Patch from "Joe.C" <joe@numa.com.tw>
Diffstat (limited to 'shell')
-rw-r--r--shell/ash.c15
1 files changed, 14 insertions, 1 deletions
diff --git a/shell/ash.c b/shell/ash.c
index 216f1c4e9..715adc393 100644
--- a/shell/ash.c
+++ b/shell/ash.c
@@ -3060,7 +3060,12 @@ static void shellexec(char **argv, char **envp, const char *path, int idx)
char *cmdname;
int e;
- if (strchr(argv[0], '/') != NULL) {
+ if (strchr(argv[0], '/') != NULL
+#ifdef CONFIG_FEATURE_SH_STANDALONE_SHELL
+ || find_applet_by_name(argv[0])
+#endif
+ )
+ {
tryexec(argv[0], argv, envp);
e = errno;
} else {
@@ -3539,6 +3544,14 @@ find_command(const char *name, struct cmdentry *entry, int act,
return;
}
+#ifdef CONFIG_FEATURE_SH_STANDALONE_SHELL
+ if (find_applet_by_name(name)) {
+ entry->cmdtype = CMDNORMAL;
+ entry->u.index = -1;
+ return;
+ }
+#endif
+
updatetbl = 1;
if (act & DO_BRUTE) {
firstchange = path_change(path, &bltin);