From 02859aaeb29fb83167364291f1ce26b54c23803b Mon Sep 17 00:00:00 2001 From: Denys Vlasenko Date: Fri, 9 Oct 2015 18:16:40 +0200 Subject: use auto_string() where appropriate to kill a few statics Custom linker script 'busybox_ldscript' found, using it function old new delta static.str 4 - -4 static.passwd 4 0 -4 bb_ask 322 311 -11 ether_print 63 47 -16 UNSPEC_print 82 66 -16 INET_sprint 59 38 -21 INET6_sprint 54 30 -24 make_human_readable_str 292 235 -57 ------------------------------------------------------------------------------ (add/remove: 0/1 grow/shrink: 0/7 up/down: 0/-153) Total: -153 bytes text data bss dec hex filename 939880 992 17480 958352 e9f90 busybox_old 939736 992 17456 958184 e9ee8 busybox_unstripped Signed-off-by: Denys Vlasenko --- libbb/human_readable.c | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) (limited to 'libbb/human_readable.c') diff --git a/libbb/human_readable.c b/libbb/human_readable.c index 0b2eb777e..5c7fc076f 100644 --- a/libbb/human_readable.c +++ b/libbb/human_readable.c @@ -37,8 +37,6 @@ const char* FAST_FUNC make_human_readable_str(unsigned long long val, '\0', 'K', 'M', 'G', 'T', 'P', 'E', 'Z', 'Y' }; - static char *str; - unsigned frac; /* 0..9 - the fractional digit */ const char *u; const char *fmt; @@ -81,12 +79,7 @@ const char* FAST_FUNC make_human_readable_str(unsigned long long val, #endif } - if (!str) { - /* sufficient for any width of val */ - str = xmalloc(sizeof(val)*3 + 2 + 3); - } - sprintf(str, fmt, val, frac, *u); - return str; + return auto_string(xasprintf(fmt, val, frac, *u)); } -- cgit v1.2.3