From ebfa9b5aa1f1f6cd4949e1be03ebf1ce074727d1 Mon Sep 17 00:00:00 2001 From: Denys Vlasenko Date: Tue, 19 Nov 2013 14:44:04 +0100 Subject: tar: fix exitcode check for MMU-spawned unpacking helpers Testcase: tar xvzf EMPTY_FILE function old new delta open_transformer 102 106 +4 get_header_tar 1781 1785 +4 Signed-off-by: Denys Vlasenko --- archival/libarchive/open_transformer.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'archival/libarchive/open_transformer.c') diff --git a/archival/libarchive/open_transformer.c b/archival/libarchive/open_transformer.c index 4e44a87e9..4e9826441 100644 --- a/archival/libarchive/open_transformer.c +++ b/archival/libarchive/open_transformer.c @@ -79,16 +79,17 @@ void FAST_FUNC open_transformer(int fd, const char *transform_prog) // FIXME: error check? #if BB_MMU { + IF_DESKTOP(long long) int r; transformer_aux_data_t aux; init_transformer_aux_data(&aux); aux.check_signature = check_signature; - transformer(&aux, fd, fd_pipe.wr); + r = transformer(&aux, fd, fd_pipe.wr); if (ENABLE_FEATURE_CLEAN_UP) { close(fd_pipe.wr); /* send EOF */ close(fd); } /* must be _exit! bug was actually seen here */ - _exit(EXIT_SUCCESS); + _exit(/*error if:*/ r < 0); } #else { -- cgit v1.2.3