diff options
| author | Patrick Sodré <sodre@sodre.co> | 2017-04-27 02:04:28 +0000 |
|---|---|---|
| committer | Jean-Sébastien Pédron <jean-sebastien@rabbitmq.com> | 2017-04-28 12:08:58 +0200 |
| commit | 4ee90ff1bba383ce74d068c2540820456714b15f (patch) | |
| tree | 0357065c14a57fac4162b2310fbde22c3533faca /rabbitmq-components.mk | |
| parent | 12d73ad7c11f3fdf6c3e28c3a35c0ba45429a2f1 (diff) | |
| download | rabbitmq-server-git-4ee90ff1bba383ce74d068c2540820456714b15f.tar.gz | |
scripts/rabbitmq-server: Work around signal handling issue with Dash
On Debian-like distributions, `/bin/sh` defaults to `/bin/dash` which
has a bug with signal handlers.
In the case of Dash, it looks like `set -e` (set at the beginning of
this script) gets precedence over signal handling. Therefore, when
`wait` is interrupted, its exit code is non-zero and because of `set
-e`, the script terminates immediately without running the signal
handler. To work around this issue, we use `|| true` to force that
statement to succeed and the signal handler to properly execute.
Replace the use of `-e` on the shebang line by a standalone `set -e`,
like other scripts. This way, the script behavior remains the same if
the script is started as an argument to a shell. For instance:
bash ./rabbitmq-server
Bump the copyright year to 2017.
Signed-off-by: Patrick Sodré <sodre@sodre.co>
Fixes #1192.
Diffstat (limited to 'rabbitmq-components.mk')
0 files changed, 0 insertions, 0 deletions
