diff options
author | Geoff Greer <geoff@greer.fm> | 2018-04-26 18:13:44 -0700 |
---|---|---|
committer | Geoff Greer <geoff@greer.fm> | 2018-04-26 18:13:44 -0700 |
commit | b9726afd485a9eca0aa7d123db1e55edb7bfc386 (patch) | |
tree | a3f6dbc4438c2b525a051e0cd561a679baa7d5cf /sway | |
parent | 64e0731cc7206e8becfe6f80bc58362aa53f07b6 (diff) |
invoke_swaybar(): Set process group. Kill process group.
Fixes a bug where terminate_swaybar() did not terminate swaybar.
Diffstat (limited to 'sway')
-rw-r--r-- | sway/config/bar.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sway/config/bar.c b/sway/config/bar.c index 2913f059..cb9e82f8 100644 --- a/sway/config/bar.c +++ b/sway/config/bar.c @@ -17,7 +17,7 @@ static void terminate_swaybar(pid_t pid) { wlr_log(L_DEBUG, "Terminating swaybar %d", pid); - int ret = kill(pid, SIGTERM); + int ret = kill(-pid, SIGTERM); if (ret != 0) { wlr_log_errno(L_ERROR, "Unable to terminate swaybar %d", pid); } else { @@ -163,6 +163,7 @@ void invoke_swaybar(struct bar_config *bar) { bar->pid = fork(); if (bar->pid == 0) { + setpgid(0, 0); close(filedes[0]); // run custom swaybar |