Commit | Line | Data |
---|---|---|
bcaf2797 IK |
1 | #!/bin/bash |
2 | # Copyright (C) 2014 Ian Kelling | |
3 | ||
4 | # Licensed under the Apache License, Version 2.0 (the "License"); | |
5 | # you may not use this file except in compliance with the License. | |
6 | # You may obtain a copy of the License at | |
7 | ||
8 | # http://www.apache.org/licenses/LICENSE-2.0 | |
9 | ||
10 | # Unless required by applicable law or agreed to in writing, software | |
11 | # distributed under the License is distributed on an "AS IS" BASIS, | |
12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
13 | # See the License for the specific language governing permissions and | |
14 | # limitations under the License. | |
15 | ||
a0898606 | 16 | errcatch() { |
e6d1e24d IK |
17 | set -E; shopt -s extdebug |
18 | _err-trap() { | |
19 | err=$? | |
20 | exec >&2 | |
bf8b73a0 | 21 | set +x |
e6d1e24d IK |
22 | echo "${BASH_SOURCE[1]}:${BASH_LINENO[0]}:in \`$BASH_COMMAND' returned $err" |
23 | bash-trace 2 | |
24 | echo "$0: exiting with code $err" | |
25 | exit $err | |
26 | } | |
27 | trap _err-trap ERR | |
28 | set -o pipefail | |
bcaf2797 | 29 | } |