- argc--;
- argv++;
- if (argc >= 1) {
- prog = *argv;
- execvp(*argv, argv);
- } else {
-#if defined shell_main && defined BB_FEATURE_SH_STANDALONE_SHELL
- char shell[] = "/bin/sh";
- char *shell_argv[2] = { shell, NULL };
- applet_name = shell;
- shell_main(1, shell_argv);
- return EXIT_SUCCESS;
-#else
- prog = getenv("SHELL");
- if (!prog)
- prog = "/bin/sh";
- execlp(prog, prog, NULL);
-#endif
+ ++argv;
+ if (argc == 2) {
+ argv -= 2;
+ if (!(*argv = getenv("SHELL"))) {
+ *argv = (char *) DEFAULT_SHELL;
+ }
+ argv[1] = (char *) "-i";