diff options
author | Ron Yorston <rmy@pobox.com> | 2017-07-18 15:58:52 +0100 |
---|---|---|
committer | Ron Yorston <rmy@pobox.com> | 2017-07-18 15:58:52 +0100 |
commit | b680f05ad449505e3d914bebd4c8d83bf768c094 (patch) | |
tree | c08ded13d430b0e7e0104f2eb594fad190ce98a3 /archival/tar.c | |
parent | 258200ff81d5a9da54dab35acf36213eff1e399b (diff) | |
parent | 513a2457b65894b10b9fd6aa8753fca59eced08c (diff) | |
download | busybox-w32-b680f05ad449505e3d914bebd4c8d83bf768c094.tar.gz busybox-w32-b680f05ad449505e3d914bebd4c8d83bf768c094.tar.bz2 busybox-w32-b680f05ad449505e3d914bebd4c8d83bf768c094.zip |
Merge branch 'busybox' into merge
Diffstat (limited to 'archival/tar.c')
-rw-r--r-- | archival/tar.c | 25 |
1 files changed, 15 insertions, 10 deletions
diff --git a/archival/tar.c b/archival/tar.c index be5838d0d..c11b735d5 100644 --- a/archival/tar.c +++ b/archival/tar.c | |||
@@ -1245,21 +1245,26 @@ int tar_main(int argc UNUSED_PARAM, char **argv) | |||
1245 | USE_FOR_MMU(IF_DESKTOP(long long) int FAST_FUNC (*xformer)(transformer_state_t *xstate);) | 1245 | USE_FOR_MMU(IF_DESKTOP(long long) int FAST_FUNC (*xformer)(transformer_state_t *xstate);) |
1246 | USE_FOR_NOMMU(const char *xformer_prog;) | 1246 | USE_FOR_NOMMU(const char *xformer_prog;) |
1247 | 1247 | ||
1248 | if (opt & OPT_COMPRESS) | 1248 | if (opt & OPT_COMPRESS) { |
1249 | USE_FOR_MMU(xformer = unpack_Z_stream;) | 1249 | USE_FOR_MMU(IF_FEATURE_SEAMLESS_Z(xformer = unpack_Z_stream;)) |
1250 | USE_FOR_NOMMU(xformer_prog = "uncompress";) | 1250 | USE_FOR_NOMMU(xformer_prog = "uncompress";) |
1251 | if (opt & OPT_GZIP) | 1251 | } |
1252 | USE_FOR_MMU(xformer = unpack_gz_stream;) | 1252 | if (opt & OPT_GZIP) { |
1253 | USE_FOR_MMU(IF_FEATURE_SEAMLESS_GZ(xformer = unpack_gz_stream;)) | ||
1253 | USE_FOR_NOMMU(xformer_prog = "gunzip";) | 1254 | USE_FOR_NOMMU(xformer_prog = "gunzip";) |
1254 | if (opt & OPT_BZIP2) | 1255 | } |
1255 | USE_FOR_MMU(xformer = unpack_bz2_stream;) | 1256 | if (opt & OPT_BZIP2) { |
1257 | USE_FOR_MMU(IF_FEATURE_SEAMLESS_BZ2(xformer = unpack_bz2_stream;)) | ||
1256 | USE_FOR_NOMMU(xformer_prog = "bunzip2";) | 1258 | USE_FOR_NOMMU(xformer_prog = "bunzip2";) |
1257 | if (opt & OPT_LZMA) | 1259 | } |
1258 | USE_FOR_MMU(xformer = unpack_lzma_stream;) | 1260 | if (opt & OPT_LZMA) { |
1261 | USE_FOR_MMU(IF_FEATURE_SEAMLESS_LZMA(xformer = unpack_lzma_stream;)) | ||
1259 | USE_FOR_NOMMU(xformer_prog = "unlzma";) | 1262 | USE_FOR_NOMMU(xformer_prog = "unlzma";) |
1260 | if (opt & OPT_XZ) | 1263 | } |
1261 | USE_FOR_MMU(xformer = unpack_xz_stream;) | 1264 | if (opt & OPT_XZ) { |
1265 | USE_FOR_MMU(IF_FEATURE_SEAMLESS_XZ(xformer = unpack_xz_stream;)) | ||
1262 | USE_FOR_NOMMU(xformer_prog = "unxz";) | 1266 | USE_FOR_NOMMU(xformer_prog = "unxz";) |
1267 | } | ||
1263 | 1268 | ||
1264 | fork_transformer_with_sig(tar_handle->src_fd, xformer, xformer_prog); | 1269 | fork_transformer_with_sig(tar_handle->src_fd, xformer, xformer_prog); |
1265 | /* Can't lseek over pipes */ | 1270 | /* Can't lseek over pipes */ |