1
mirror of https://github.com/rclone/rclone synced 2024-12-25 17:03:45 +01:00
rclone/lib/atexit
Michael Hanselmann 6b7d7d0441 atexit: Terminate with non-zero status after receiving signal
When rclone received a SIGINT (Ctrl+C) or SIGTERM signal while an atexit
function is registered it always terminated with status code 0. Unix
convention is to exit with a non-zero status code. Often it's
`128 + int(signum), but at least not zero.

With this change fatal signals handled by the `atexit` package cause
a non-zero exit code. On Unix systems it's `128 + int(signum)` while
on other systems, such as Windows, it's always 2 ("error not otherwise
categorised").

Resolves #5437.

Signed-off-by: Michael Hanselmann <public@hansmi.ch>
2021-07-07 17:59:26 +01:00
..
atexit_other.go atexit: Terminate with non-zero status after receiving signal 2021-07-07 17:59:26 +01:00
atexit_test.go atexit: Terminate with non-zero status after receiving signal 2021-07-07 17:59:26 +01:00
atexit_unix.go atexit: Terminate with non-zero status after receiving signal 2021-07-07 17:59:26 +01:00
atexit.go atexit: Terminate with non-zero status after receiving signal 2021-07-07 17:59:26 +01:00