diff options
author | Denys Vlasenko <vda.linux@googlemail.com> | 2010-05-31 14:18:57 +0200 |
---|---|---|
committer | Denys Vlasenko <vda.linux@googlemail.com> | 2010-05-31 14:18:57 +0200 |
commit | 39a04f71ca8ccf81de2cdbd538df519cf34ef2e6 (patch) | |
tree | 01b85baa36d95c48924c3688f8a8f9e0c96ba04a /archival/gzip.c | |
parent | b8b72f02f01017d0f9584666fa572221f2b58613 (diff) | |
download | busybox-w32-39a04f71ca8ccf81de2cdbd538df519cf34ef2e6.tar.gz busybox-w32-39a04f71ca8ccf81de2cdbd538df519cf34ef2e6.tar.bz2 busybox-w32-39a04f71ca8ccf81de2cdbd538df519cf34ef2e6.zip |
archival/*: shrink by reusing sufficiently similar functions
function old new delta
append_ext - 16 +16
unxz_main 77 83 +6
unlzma_main 77 83 +6
uncompress_main 42 48 +6
gzip_main 184 190 +6
bzip2_main 114 120 +6
bunzip2_main 61 67 +6
bbunpack 469 475 +6
send_tree 355 360 +5
lzop_main 89 92 +3
gunzip_main 61 64 +3
make_new_name_lzop 84 82 -2
make_new_name_gunzip 114 112 -2
make_new_name_unxz 14 - -14
make_new_name_unlzma 14 - -14
make_new_name_uncompress 14 - -14
make_new_name_bunzip2 14 - -14
make_new_name_gzip 17 - -17
make_new_name_bzip2 17 - -17
------------------------------------------------------------------------------
(add/remove: 1/6 grow/shrink: 10/2 up/down: 69/-94) Total: -25 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'archival/gzip.c')
-rw-r--r-- | archival/gzip.c | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/archival/gzip.c b/archival/gzip.c index a327d5435..5cc553a80 100644 --- a/archival/gzip.c +++ b/archival/gzip.c | |||
@@ -1998,13 +1998,7 @@ static void zip(ulg time_stamp) | |||
1998 | 1998 | ||
1999 | /* ======================================================================== */ | 1999 | /* ======================================================================== */ |
2000 | static | 2000 | static |
2001 | char* make_new_name_gzip(char *filename) | 2001 | IF_DESKTOP(long long) int FAST_FUNC pack_gzip(unpack_info_t *info UNUSED_PARAM) |
2002 | { | ||
2003 | return xasprintf("%s.gz", filename); | ||
2004 | } | ||
2005 | |||
2006 | static | ||
2007 | IF_DESKTOP(long long) int pack_gzip(unpack_info_t *info UNUSED_PARAM) | ||
2008 | { | 2002 | { |
2009 | struct stat s; | 2003 | struct stat s; |
2010 | 2004 | ||
@@ -2063,7 +2057,7 @@ static const char gzip_longopts[] ALIGN1 = | |||
2063 | #endif | 2057 | #endif |
2064 | 2058 | ||
2065 | /* | 2059 | /* |
2066 | * Linux kernel build uses gzip -d -n. We accept and ignore it. | 2060 | * Linux kernel build uses gzip -d -n. We accept and ignore -n. |
2067 | * Man page says: | 2061 | * Man page says: |
2068 | * -n --no-name | 2062 | * -n --no-name |
2069 | * gzip: do not save the original file name and time stamp. | 2063 | * gzip: do not save the original file name and time stamp. |
@@ -2113,5 +2107,5 @@ int gzip_main(int argc UNUSED_PARAM, char **argv) | |||
2113 | /* Initialise the CRC32 table */ | 2107 | /* Initialise the CRC32 table */ |
2114 | G1.crc_32_tab = crc32_filltable(NULL, 0); | 2108 | G1.crc_32_tab = crc32_filltable(NULL, 0); |
2115 | 2109 | ||
2116 | return bbunpack(argv, make_new_name_gzip, pack_gzip); | 2110 | return bbunpack(argv, pack_gzip, append_ext, "gz"); |
2117 | } | 2111 | } |