aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--shell/ash.c4
-rw-r--r--shell/msh.c3
2 files changed, 2 insertions, 5 deletions
diff --git a/shell/ash.c b/shell/ash.c
index 713898a9f..a0eb4e36f 100644
--- a/shell/ash.c
+++ b/shell/ash.c
@@ -3737,9 +3737,7 @@ tryexec(char *cmd, char **argv, char **envp)
3737#ifdef CONFIG_FEATURE_SH_STANDALONE_SHELL 3737#ifdef CONFIG_FEATURE_SH_STANDALONE_SHELL
3738 if(find_applet_by_name(cmd) != NULL) { 3738 if(find_applet_by_name(cmd) != NULL) {
3739 /* re-exec ourselves with the new arguments */ 3739 /* re-exec ourselves with the new arguments */
3740 execve("/proc/self/exe",argv,envp); 3740 execve(CONFIG_BUSYBOX_EXEC_PATH,argv,envp);
3741 /* If proc isn't mounted, try hardcoded path to busybox binary*/
3742 execve("/bin/busybox",argv,envp);
3743 /* If they called chroot or otherwise made the binary no longer 3741 /* If they called chroot or otherwise made the binary no longer
3744 * executable, fall through */ 3742 * executable, fall through */
3745 } 3743 }
diff --git a/shell/msh.c b/shell/msh.c
index 62e6b6e01..bd4b8fdb2 100644
--- a/shell/msh.c
+++ b/shell/msh.c
@@ -3306,8 +3306,7 @@ char *c, **v, **envp;
3306 /* We have to exec here since we vforked. Running 3306 /* We have to exec here since we vforked. Running
3307 * run_applet_by_name() won't work and bad things 3307 * run_applet_by_name() won't work and bad things
3308 * will happen. */ 3308 * will happen. */
3309 execve("/proc/self/exe", v, envp); 3309 execve(CONFIG_BUSYBOX_EXEC_PATH, v, envp);
3310 execve("busybox", v, envp);
3311 } 3310 }
3312#endif 3311#endif
3313 3312