stderr_filter() only does anything useful when running in
parallel (i.e. with the -p option). So, simplify the non-parallel
case by not using stderr_filter().
As a side-effect, this fixes an issue introduced in commit
85a4375788d8ef8345ec390807f18299abdadb20 where local daemon tests
would hang when trying to start daemons with VALGRIND set (to a
valgrind command that does not use --log-file). This is because
valgrind would keep stderr open for its output so the pipeline
involving stderr_filter() would never complete.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
if $verbose ; then
echo >&2 ; echo ">> NODE: $n <<" >&2
fi
if $verbose ; then
echo >&2 ; echo ">> NODE: $n <<" >&2
fi
- exec 3>&1
- {
- $ssh_cmd "$n" "$command" 3>&- |
- stdout_filter >&3
- } 2>&1 | stderr_filter
+ $ssh_cmd "$n" "$command" | stdout_filter