diff options
| author | Erik Arvstedt <erik.arvstedt@gmail.com> | 2022-07-02 12:51:12 +0200 |
|---|---|---|
| committer | Erik Arvstedt <erik.arvstedt@gmail.com> | 2022-07-02 16:13:12 +0200 |
| commit | 3f54dfa4755613dbd3098814a9ab07cb977ca347 (patch) | |
| tree | de3dc05086dc36c9c190403ae7e817f105914d65 /pkgs/development/python-modules/rangehttpserver | |
| parent | bb7867f1e5080de1dfff80e2f7d5a4be49889e23 (diff) | |
treewide: fix bash exit handlers
Transform exit handlers of the form
trap cleanup EXIT [INT] [TERM] [QUIT] [HUP] [ERR]
(where cleanup is idempotent)
to
trap cleanup EXIT
This fixes a common bash antipattern.
Each of the above signals causes the script to exit. For each signal,
bash first handles the signal by running `cleanup` and then runs
`cleanup` again when handling EXIT.
(Exception: `vscode/*` prevents the second run of `cleanup` by removing
the trap in cleanup`).
Simplify the cleanup logic by just trapping exit, which is always run
when the script exits due to any of the above signals.
Note: In case of borgbackup, the exit handler is not idempotent, but just
trapping EXIT guarantees that it's only run once.
Diffstat (limited to 'pkgs/development/python-modules/rangehttpserver')
0 files changed, 0 insertions, 0 deletions
