summaryrefslogtreecommitdiff
path: root/archival/rpm2cpio.c
diff options
context:
space:
mode:
Diffstat (limited to 'archival/rpm2cpio.c')
-rw-r--r--archival/rpm2cpio.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/archival/rpm2cpio.c b/archival/rpm2cpio.c
index 3e4a6a2..a6db19c 100644
--- a/archival/rpm2cpio.c
+++ b/archival/rpm2cpio.c
@@ -75,11 +75,14 @@ int rpm2cpio_main(int argc UNUSED_PARAM, char **argv)
/* Skip the main header */
skip_header();
- //if (SEAMLESS_COMPRESSION)
+ //if (SEAMLESS_COMPRESSION) - we do this at the end instead.
// /* We need to know whether child (gzip/bzip/etc) exits abnormally */
// signal(SIGCHLD, check_errors_in_children);
- /* This works, but doesn't report uncompress errors (they happen in child) */
+//TODO: look for rpm tag RPMTAG_PAYLOADCOMPRESSOR (dec 1125, hex 0x465),
+// if the value is "lzma", set up decompressor without detection
+// (lzma can't be detected).
+
setup_unzip_on_fd(rpm_fd, /*fail_if_not_compressed:*/ 1);
if (bb_copyfd_eof(rpm_fd, STDOUT_FILENO) < 0)
bb_error_msg_and_die("error unpacking");