+ if (bb_xread_char(src_fd) == 0x1f) {
+ unsigned char magic2;
+
+ magic2 = bb_xread_char(src_fd);
+#ifdef CONFIG_FEATURE_GUNZIP_UNCOMPRESS
+ if (magic2 == 0x9d) {
+ status = uncompress(src_fd, dst_fd);
+ } else
+#endif
+ if (magic2 == 0x8b) {
+ check_header_gzip(src_fd);
+ status = inflate_gunzip(src_fd, dst_fd);
+ if (status != 0) {
+ bb_error_msg_and_die("Error inflating");
+ }
+ } else {
+ bb_error_msg_and_die("Invalid magic");
+ }
+ } else {
+ bb_error_msg_and_die("Invalid magic");
+ }
+
+ if ((status != EXIT_SUCCESS) && (new_path)) {