Handle SIGTERM sent to sway

This makes sway handle and gracefully shut down everything when
receiving a SIGTERM.

Fix #416
This commit is contained in:
Mikkel Oscar Lyderik 2015-12-29 13:00:35 +01:00
parent b18f004210
commit 16b8c2e915
4 changed files with 24 additions and 7 deletions

View file

@ -318,12 +318,6 @@ static struct cmd_results *cmd_exec(int argc, char **argv) {
return cmd_exec_always(argc, argv);
}
static void kill_views(swayc_t *container, void *data) {
if (container->type == C_VIEW) {
wlc_view_close(container->handle);
}
}
static struct cmd_results *cmd_exit(int argc, char **argv) {
struct cmd_results *error = NULL;
if (config->reading) return cmd_results_new(CMD_FAILURE, "exit", "Can't be used in config file.");
@ -331,7 +325,7 @@ static struct cmd_results *cmd_exit(int argc, char **argv) {
return error;
}
// Close all views
container_map(&root_container, kill_views, NULL);
close_views(&root_container);
sway_terminate();
return cmd_results_new(CMD_SUCCESS, NULL, NULL);
}