diff options
author | Ron Yorston <rmy@pobox.com> | 2016-04-08 11:57:20 +0100 |
---|---|---|
committer | Denys Vlasenko <vda.linux@googlemail.com> | 2016-04-15 22:13:51 +0200 |
commit | 2b91958dff0b7bae83cf2c3f2db55bd248fe0956 (patch) | |
tree | 3b31eba78e93613ea307dde0fbd8995d47c15500 | |
parent | e4d925b8899e38437311d2c63d0d0d200e04b5a1 (diff) | |
download | busybox-2b91958dff0b7bae83cf2c3f2db55bd248fe0956.tar.gz |
Rewrite iteration through applet names to save a few bytes
function old new delta
run_applet_and_exit 758 755 -3
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-3) Total: -3 bytes
In standalone shell mode the saving increases to 17 bytes.
Signed-off-by: Ron Yorston <rmy@pobox.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
-rw-r--r-- | libbb/appletlib.c | 3 | ||||
-rw-r--r-- | libbb/lineedit.c | 7 | ||||
-rw-r--r-- | shell/ash.c | 3 |
3 files changed, 7 insertions, 6 deletions
diff --git a/libbb/appletlib.c b/libbb/appletlib.c index de654f64c..b682e6b85 100644 --- a/libbb/appletlib.c +++ b/libbb/appletlib.c @@ -791,7 +791,8 @@ static int busybox_main(char **argv) full_write2_str(a); full_write2_str("\n"); i++; - a += strlen(a) + 1; + while (*a++ != '\0') + continue; } return 0; } diff --git a/libbb/lineedit.c b/libbb/lineedit.c index 2ddb2b6e9..3e62f46b4 100644 --- a/libbb/lineedit.c +++ b/libbb/lineedit.c @@ -779,12 +779,11 @@ static NOINLINE unsigned complete_cmd_dir_file(const char *command, int type) if (type == FIND_EXE_ONLY) { const char *p = applet_names; - i = 0; - while (i < NUM_APPLETS) { + while (*p) { if (strncmp(pfind, p, pf_len) == 0) add_match(xstrdup(p)); - p += strlen(p) + 1; - i++; + while (*p++ != '\0') + continue; } } #endif diff --git a/shell/ash.c b/shell/ash.c index 5613e1f33..13eeab34b 100644 --- a/shell/ash.c +++ b/shell/ash.c @@ -12597,7 +12597,8 @@ helpcmd(int argc UNUSED_PARAM, char **argv UNUSED_PARAM) out1fmt("\n"); col = 0; } - a += strlen(a) + 1; + while (*a++ != '\0') + continue; } } # endif |