diff options
author | Denys Vlasenko <vda.linux@googlemail.com> | 2010-06-02 12:57:26 +0200 |
---|---|---|
committer | Denys Vlasenko <vda.linux@googlemail.com> | 2010-06-02 12:57:26 +0200 |
commit | ea8b252cb30c4b4463df43a5342af95931920f09 (patch) | |
tree | b32f4cfd202c9b98cbb2a59bb5a629275e1b4119 /shell | |
parent | 8837c5dec402fd6782589c0a676bc7f90dea4061 (diff) | |
download | busybox-w32-ea8b252cb30c4b4463df43a5342af95931920f09.tar.gz busybox-w32-ea8b252cb30c4b4463df43a5342af95931920f09.tar.bz2 busybox-w32-ea8b252cb30c4b4463df43a5342af95931920f09.zip |
*: better string sharing
text data bss dec hex filename
849427 441 7556 857424 d1550 busybox_old
849355 441 7556 857352 d1508 busybox_unstripped
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'shell')
-rw-r--r-- | shell/ash.c | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/shell/ash.c b/shell/ash.c index d77d9d3c2..08ad0f451 100644 --- a/shell/ash.c +++ b/shell/ash.c | |||
@@ -119,9 +119,7 @@ enum { NOPTS = ARRAY_SIZE(optletters_optnames) }; | |||
119 | 119 | ||
120 | /* ============ Misc data */ | 120 | /* ============ Misc data */ |
121 | 121 | ||
122 | static const char homestr[] ALIGN1 = "HOME"; | 122 | #define msg_illnum "Illegal number: %s" |
123 | static const char snlfmt[] ALIGN1 = "%s\n"; | ||
124 | static const char msg_illnum[] ALIGN1 = "Illegal number: %s"; | ||
125 | 123 | ||
126 | /* | 124 | /* |
127 | * We enclose jmp_buf in a structure so that we can declare pointers to | 125 | * We enclose jmp_buf in a structure so that we can declare pointers to |
@@ -2520,7 +2518,7 @@ cdcmd(int argc UNUSED_PARAM, char **argv UNUSED_PARAM) | |||
2520 | flags = cdopt(); | 2518 | flags = cdopt(); |
2521 | dest = *argptr; | 2519 | dest = *argptr; |
2522 | if (!dest) | 2520 | if (!dest) |
2523 | dest = bltinlookup(homestr); | 2521 | dest = bltinlookup("HOME"); |
2524 | else if (LONE_DASH(dest)) { | 2522 | else if (LONE_DASH(dest)) { |
2525 | dest = bltinlookup("OLDPWD"); | 2523 | dest = bltinlookup("OLDPWD"); |
2526 | flags |= CD_PRINT; | 2524 | flags |= CD_PRINT; |
@@ -2567,7 +2565,7 @@ cdcmd(int argc UNUSED_PARAM, char **argv UNUSED_PARAM) | |||
2567 | /* NOTREACHED */ | 2565 | /* NOTREACHED */ |
2568 | out: | 2566 | out: |
2569 | if (flags & CD_PRINT) | 2567 | if (flags & CD_PRINT) |
2570 | out1fmt(snlfmt, curdir); | 2568 | out1fmt("%s\n", curdir); |
2571 | return 0; | 2569 | return 0; |
2572 | } | 2570 | } |
2573 | 2571 | ||
@@ -2583,7 +2581,7 @@ pwdcmd(int argc UNUSED_PARAM, char **argv UNUSED_PARAM) | |||
2583 | setpwd(dir, 0); | 2581 | setpwd(dir, 0); |
2584 | dir = physdir; | 2582 | dir = physdir; |
2585 | } | 2583 | } |
2586 | out1fmt(snlfmt, dir); | 2584 | out1fmt("%s\n", dir); |
2587 | return 0; | 2585 | return 0; |
2588 | } | 2586 | } |
2589 | 2587 | ||
@@ -5625,7 +5623,7 @@ exptilde(char *startp, char *p, int flags) | |||
5625 | done: | 5623 | done: |
5626 | *p = '\0'; | 5624 | *p = '\0'; |
5627 | if (*name == '\0') { | 5625 | if (*name == '\0') { |
5628 | home = lookupvar(homestr); | 5626 | home = lookupvar("HOME"); |
5629 | } else { | 5627 | } else { |
5630 | pw = getpwnam(name); | 5628 | pw = getpwnam(name); |
5631 | if (pw == NULL) | 5629 | if (pw == NULL) |
@@ -9857,7 +9855,7 @@ chkmail(void) | |||
9857 | } | 9855 | } |
9858 | if (!mail_var_path_changed && statb.st_mtime != *mtp) { | 9856 | if (!mail_var_path_changed && statb.st_mtime != *mtp) { |
9859 | fprintf( | 9857 | fprintf( |
9860 | stderr, snlfmt, | 9858 | stderr, "%s\n", |
9861 | pathopt ? pathopt : "you have mail" | 9859 | pathopt ? pathopt : "you have mail" |
9862 | ); | 9860 | ); |
9863 | } | 9861 | } |