diff options
author | Mikkel Oscar Lyderik <mikkeloscar@gmail.com> | 2016-02-26 09:08:05 +0100 |
---|---|---|
committer | Mikkel Oscar Lyderik <mikkeloscar@gmail.com> | 2016-02-26 09:42:21 +0100 |
commit | 77d8c171d7c29dc965f0f73a342e9b8465680b65 (patch) | |
tree | 4a535350847ba8c3109f8449e3da2b65329446b8 /main.c | |
parent | 0bd3c1a89ad73ce46a4bfe9b9676ddae0d23c603 (diff) | |
download | swaybg-77d8c171d7c29dc965f0f73a342e9b8465680b65.tar.gz swaybg-77d8c171d7c29dc965f0f73a342e9b8465680b65.tar.bz2 |
Correctly exit sway on errors.
Calling `exit` in sway_terminate prevents sway from correctly shutting
down (freeing data, cleanly terminating the ipc server, etc.).
A better way is to exit straight away if the failure occurs before
`wlc_run` and use sway_abort as usual if it occur when wlc is running.
Diffstat (limited to '')
-rw-r--r-- | main.c | 4 |
1 files changed, 2 insertions, 2 deletions
@@ -21,7 +21,7 @@ enum scaling_mode { SCALING_MODE_TILE, }; -void sway_terminate(void) { +void sway_terminate(int exit_code) { int i; for (i = 0; i < surfaces->length; ++i) { struct window *window = surfaces->items[i]; @@ -29,7 +29,7 @@ void sway_terminate(void) { } list_free(surfaces); registry_teardown(registry); - exit(EXIT_FAILURE); + exit(exit_code); } int main(int argc, const char **argv) { |