From 511feb57cfea29b1f6ba303cedd1456f5cecd69e Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 8 Nov 2015 05:19:42 +0100 Subject: Merging upstream version 0.9~rc2. Signed-off-by: Daniel Baumann --- zcmp.cc | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'zcmp.cc') diff --git a/zcmp.cc b/zcmp.cc index a2779b9..7951046 100644 --- a/zcmp.cc +++ b/zcmp.cc @@ -20,6 +20,7 @@ #include #include #include +#include #include #include #include @@ -469,10 +470,15 @@ int main( const int argc, const char * const argv[] ) int retval = cmp( max_size, infd, filenames, print_bytes ); - if( ( ( pid[0] && wait_for_child( pid[0], "data feeder" ) != 0 ) || - ( pid[1] && wait_for_child( pid[1], "data feeder" ) != 0 ) ) && - retval == 0 ) - retval = 2; + if( retval != 0 ) + { + if( pid[0] ) kill( pid[0], SIGTERM ); + if( pid[1] ) kill( pid[1], SIGTERM ); + } + else + if( ( pid[0] && wait_for_child( pid[0], "data feeder" ) != 0 ) || + ( pid[1] && wait_for_child( pid[1], "data feeder" ) != 0 ) ) + retval = 2; for( int i = 0; i < 2; ++i ) { -- cgit v1.2.3