diff --git a/misc/core.func b/misc/core.func index 7a15fd56..90a255a3 100644 --- a/misc/core.func +++ b/misc/core.func @@ -194,10 +194,12 @@ SILENT_LOGFILE="/tmp/silent.$$.log" silent() { local cmd="$*" - set +Eeuo pipefail + + trap - ERR "$@" >>"$SILENT_LOGFILE" 2>&1 local rc=$? - set -Eeuo pipefail + trap 'error_handler' ERR + if [[ $rc -ne 0 ]]; then BASH_COMMAND="$cmd" fi