libbb: eliminate a static data array in bb_mode_string()
function old new delta print_stat 861 869 +8 header_verbose_list_ar 73 77 +4 display_single 975 979 +4 header_verbose_list 237 239 +2 bb_mode_string 124 115 -9 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 4/1 up/down: 18/-9) Total: 9 bytes text data bss dec hex filename 1043136 559 5052 1048747 1000ab busybox_old 1043153 559 5020 1048732 10009c busybox_unstripped Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
		| @@ -196,9 +196,10 @@ static int write_ar_archive(archive_handle_t *handle) | ||||
|  | ||||
| static void FAST_FUNC header_verbose_list_ar(const file_header_t *file_header) | ||||
| { | ||||
| 	const char *mode = bb_mode_string(file_header->mode); | ||||
| 	char mode[12]; | ||||
| 	char *mtime; | ||||
|  | ||||
| 	bb_mode_string(mode, file_header->mode); | ||||
| 	mtime = ctime(&file_header->mtime); | ||||
| 	mtime[16] = ' '; | ||||
| 	memmove(&mtime[17], &mtime[20], 4); | ||||
|   | ||||
| @@ -9,6 +9,7 @@ void FAST_FUNC header_verbose_list(const file_header_t *file_header) | ||||
| { | ||||
| 	struct tm tm_time; | ||||
| 	struct tm *ptm = &tm_time; //localtime(&file_header->mtime); | ||||
| 	char modestr[12]; | ||||
|  | ||||
| #if ENABLE_FEATURE_TAR_UNAME_GNAME | ||||
| 	char uid[sizeof(int)*3 + 2]; | ||||
| @@ -29,7 +30,7 @@ void FAST_FUNC header_verbose_list(const file_header_t *file_header) | ||||
| 		group = utoa(file_header->gid); | ||||
| 	} | ||||
| 	printf("%s %s/%s %9"OFF_FMT"u %4u-%02u-%02u %02u:%02u:%02u %s", | ||||
| 		bb_mode_string(file_header->mode), | ||||
| 		bb_mode_string(modestr, file_header->mode), | ||||
| 		user, | ||||
| 		group, | ||||
| 		file_header->size, | ||||
| @@ -46,7 +47,7 @@ void FAST_FUNC header_verbose_list(const file_header_t *file_header) | ||||
| 	localtime_r(&file_header->mtime, ptm); | ||||
|  | ||||
| 	printf("%s %u/%u %9"OFF_FMT"u %4u-%02u-%02u %02u:%02u:%02u %s", | ||||
| 		bb_mode_string(file_header->mode), | ||||
| 		bb_mode_string(modestr, file_header->mode), | ||||
| 		(unsigned)file_header->uid, | ||||
| 		(unsigned)file_header->gid, | ||||
| 		file_header->size, | ||||
|   | ||||
		Reference in New Issue
	
	Block a user