Use dedicated trap functions to avoid unsetting the trap when e.g. cleanup is called
This commit is contained in:
parent
a26416dca3
commit
7228cc00e8
|
@ -62,8 +62,6 @@ setup_workdir() {
|
||||||
}
|
}
|
||||||
|
|
||||||
cleanup() {
|
cleanup() {
|
||||||
trap - EXIT INT QUIT TERM HUP
|
|
||||||
|
|
||||||
[[ -n $WORKDIR ]] && rm -rf "$WORKDIR"
|
[[ -n $WORKDIR ]] && rm -rf "$WORKDIR"
|
||||||
[[ $1 ]] && exit $1
|
[[ $1 ]] && exit $1
|
||||||
}
|
}
|
||||||
|
@ -73,13 +71,23 @@ abort() {
|
||||||
cleanup 0
|
cleanup 0
|
||||||
}
|
}
|
||||||
|
|
||||||
|
trap_abort() {
|
||||||
|
trap - EXIT INT QUIT TERM HUP
|
||||||
|
abort
|
||||||
|
}
|
||||||
|
|
||||||
|
trap_exit() {
|
||||||
|
trap - EXIT INT QUIT TERM HUP
|
||||||
|
cleanup 0
|
||||||
|
}
|
||||||
|
|
||||||
die() {
|
die() {
|
||||||
error "$*"
|
error "$*"
|
||||||
cleanup 1
|
cleanup 1
|
||||||
}
|
}
|
||||||
|
|
||||||
trap abort INT QUIT TERM HUP
|
trap 'trap_abort' INT QUIT TERM HUP
|
||||||
trap 'cleanup 0' EXIT
|
trap 'trap_exit' EXIT
|
||||||
|
|
||||||
##
|
##
|
||||||
# usage : in_array( $needle, $haystack )
|
# usage : in_array( $needle, $haystack )
|
||||||
|
|
Loading…
Reference in New Issue