ash: recognize embedded scripts in SH_STANDALONE mode

function                                             old     new   delta
find_script_by_name                                    -      51     +51
shellexec                                            254     271     +17
find_command                                         990    1007     +17
evalcommand                                         1653    1661      +8
doCommands                                          2233    2222     -11
run_applet_and_exit                                  128     100     -28
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 6/4 up/down: 104/-52)            Total: 52 bytes

Signed-off-by: Ron Yorston <rmy@pobox.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
Ron Yorston
2018-11-01 11:04:47 +01:00
committed by Denys Vlasenko
parent aa2959c90d
commit 151de441e7
3 changed files with 17 additions and 5 deletions

View File

@ -964,20 +964,20 @@ void FAST_FUNC run_applet_no_and_exit(int applet_no, const char *name, char **ar
# endif /* NUM_APPLETS > 0 */
# if NUM_SCRIPTS > 0
static int
find_script_by_name(const char *arg)
int FAST_FUNC
find_script_by_name(const char *name)
{
const char *s = script_names;
int i = 0;
while (*s) {
if (strcmp(arg, s) == 0)
if (strcmp(name, s) == 0)
return i;
i++;
while (*s++ != '\0')
continue;
}
return -1;
return -0x10000; /* make it so that NUM_APPLETS + <error> is still < 0 */
}
static char *