Using a more elegant way to obtain pipe component exit value

This commit is contained in:
Thomas Schmitt 2011-07-17 14:37:54 +00:00
parent ed181cd4e4
commit ffe287cd1e
1 changed files with 11 additions and 3 deletions

View File

@ -129,9 +129,17 @@ fi
T1=`date '+%s'`
set +e
return_wrapper ./${s} ${PASSED_OPTIONS} 2>&1 | count_lines >> ${CLOG}
RET=$(cat "$return_value_file")
rm "$return_value_file"
if test -n "$PIPESTATUS"
then
# PIPESTATUS[0] should be available in bash
./${s} ${PASSED_OPTIONS} 2>&1 | count_lines >> ${CLOG}
RET="${PIPESTATUS[0]}"
else
# a more portable method which uses a temporary file to record exit value
return_wrapper ./${s} ${PASSED_OPTIONS} 2>&1 | count_lines >> ${CLOG}
RET=$(cat "$return_value_file")
rm "$return_value_file"
fi
# echo "RET='$RET'" >/dev/tty
T2=`date '+%s'`