From: Bruno Haible Date: Tue, 11 Jun 2024 18:42:12 +0000 (+0200) Subject: test-framework-sh: Fix 'returns_' to not turn off tracing permanently. X-Git-Url: https://gitweb.git.savannah.gnu.org/gitweb/?a=commitdiff_plain;h=3b73aad4ba00eeb3ecf2227a420695d32be6d98b;p=gnulib.git test-framework-sh: Fix 'returns_' to not turn off tracing permanently. * tests/init.sh (returns_): Restore tracing if it was enabled before. --- diff --git a/ChangeLog b/ChangeLog index d501a2d80f..1dc942337b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2024-06-11 Bruno Haible + + test-framework-sh: Fix 'returns_' to not turn off tracing permanently. + * tests/init.sh (returns_): Restore tracing if it was enabled before. + 2024-06-09 Bruno Haible c32width tests: Avoid a test failure on Solaris 11 OpenIndiana, OmniOS. diff --git a/tests/init.sh b/tests/init.sh index 6effae27c7..237db02fb0 100644 --- a/tests/init.sh +++ b/tests/init.sh @@ -598,6 +598,7 @@ fi # returns_ 1 command ... || fail returns_ () { # Disable tracing so it doesn't interfere with stderr of the wrapped command + local is_tracing=`{ :; } 2>&1` { set +x; } 2>/dev/null local exp_exit="$1" @@ -605,7 +606,8 @@ returns_ () { "$@" test $? -eq $exp_exit && ret_=0 || ret_=1 - if test "$VERBOSE" = yes && test "$gl_set_x_corrupts_stderr_" = false; then + # Restore tracing if it was enabled. + if test -n "$is_tracing"; then set -x fi { return $ret_; } 2>/dev/null