summaryrefslogtreecommitdiffstats
path: root/swaybar/bar.c
diff options
context:
space:
mode:
Diffstat (limited to 'swaybar/bar.c')
-rw-r--r--swaybar/bar.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/swaybar/bar.c b/swaybar/bar.c
index 5e87eac9..3412ff29 100644
--- a/swaybar/bar.c
+++ b/swaybar/bar.c
@@ -41,6 +41,7 @@ static void spawn_status_cmd_proc(struct bar *bar) {
41 close(pipefd[0]); 41 close(pipefd[0]);
42 dup2(pipefd[1], STDOUT_FILENO); 42 dup2(pipefd[1], STDOUT_FILENO);
43 close(pipefd[1]); 43 close(pipefd[1]);
44 setpgid(bar->status_command_pid, 0);
44 char *const cmd[] = { 45 char *const cmd[] = {
45 "sh", 46 "sh",
46 "-c", 47 "-c",
@@ -290,7 +291,7 @@ static void free_outputs(list_t *outputs) {
290static void terminate_status_command(pid_t pid) { 291static void terminate_status_command(pid_t pid) {
291 if (pid) { 292 if (pid) {
292 // terminate status_command process 293 // terminate status_command process
293 int ret = kill(pid, SIGTERM); 294 int ret = killpg(pid, SIGTERM);
294 if (ret != 0) { 295 if (ret != 0) {
295 sway_log(L_ERROR, "Unable to terminate status_command [pid: %d]", pid); 296 sway_log(L_ERROR, "Unable to terminate status_command [pid: %d]", pid);
296 } else { 297 } else {