Do not send ipc_event_shutdown from ipc client

In `sway_terminate`, `ipc_event_shutdown` was being sent regardless
which mode sway was running in. When running as an ipc client,
`sway_terminate` should just exit
This commit is contained in:
Brian Ashworth 2019-01-15 14:54:26 -05:00 committed by emersion
parent f7309778a7
commit 686b853047
1 changed files with 10 additions and 4 deletions

View File

@ -31,11 +31,17 @@ static int exit_value = 0;
struct sway_server server = {0}; struct sway_server server = {0};
void sway_terminate(int exit_code) { void sway_terminate(int exit_code) {
if (!server.wl_display) {
// Running as IPC client
exit(exit_code);
} else {
// Running as server
terminate_request = true; terminate_request = true;
exit_value = exit_code; exit_value = exit_code;
ipc_event_shutdown("exit"); ipc_event_shutdown("exit");
wl_display_terminate(server.wl_display); wl_display_terminate(server.wl_display);
} }
}
void sig_handler(int signal) { void sig_handler(int signal) {
sway_terminate(EXIT_SUCCESS); sway_terminate(EXIT_SUCCESS);