diff options
author | Charmander <~@charmander.me> | 2020-07-11 10:21:02 -0700 |
---|---|---|
committer | Simon Ser <contact@emersion.fr> | 2020-07-22 09:40:37 +0200 |
commit | 66b7ac6a82ccf62e6408443f66c6a370a314ebaa (patch) | |
tree | b1e21df5783287a899bbf57d0566be14059d0a9e /swaybar | |
parent | 7c7afa3b297d17bb36fd1d112485ebf6b9a40c5b (diff) |
swaybar: allow status line cleanup to proceed when hidden
`determine_bar_visibility` stops and starts the status command process according to the bar’s visibility. If the bar was hidden during teardown, teardown would stall while waiting for the stopped status command process to exit.
This resumes a stopped status command during teardown and allows, for example, sway to reload or quit without leaving a swaybar instance behind each time.
Fixes #5536.
CONT before TERM as requested in review.
Diffstat (limited to 'swaybar')
-rw-r--r-- | swaybar/status_line.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/swaybar/status_line.c b/swaybar/status_line.c index 71ceb1d0..ecd91032 100644 --- a/swaybar/status_line.c +++ b/swaybar/status_line.c @@ -185,6 +185,7 @@ struct status_line *status_line_init(char *cmd) { void status_line_free(struct status_line *status) { status_line_close_fds(status); + kill(status->pid, status->cont_signal); kill(status->pid, SIGTERM); waitpid(status->pid, NULL, 0); if (status->protocol == PROTOCOL_I3BAR) { |