less: document -S flag and make it independently configurable
[oweals/busybox.git] / archival / libarchive / get_header_tar_gz.c
index b9679b0bd7ccad42679cfb07734bc584a4294cac..b11f503dc6d75518c60f04e269296f9960d38b46 100644 (file)
@@ -8,25 +8,10 @@
 
 char FAST_FUNC get_header_tar_gz(archive_handle_t *archive_handle)
 {
-#if BB_MMU
-       uint16_t magic;
-#endif
-
        /* Can't lseek over pipes */
        archive_handle->seek = seek_by_read;
 
-       /* Check gzip magic only if open_transformer will invoke unpack_gz_stream (MMU case).
-        * Otherwise, it will invoke an external helper "gunzip -cf" (NOMMU case) which will
-        * need the header. */
-#if BB_MMU
-       xread(archive_handle->src_fd, &magic, 2);
-       /* Can skip this check, but error message will be less clear */
-       if (magic != GZIP_MAGIC) {
-               bb_error_msg_and_die("invalid gzip magic");
-       }
-#endif
-
-       open_transformer(archive_handle->src_fd, unpack_gz_stream, "gunzip");
+       fork_transformer_with_sig(archive_handle->src_fd, unpack_gz_stream, "gunzip");
        archive_handle->offset = 0;
        while (get_header_tar(archive_handle) == EXIT_SUCCESS)
                continue;