From: Reginald Kennedy Date: Mon, 22 Oct 2012 03:34:29 +0000 (+0800) Subject: Kill bar script on an unclean exit. X-Git-Url: https://jasonwoof.com/gitweb/?a=commitdiff_plain;h=f9064bf49a3c0cdefc0bef31533cf846df9aebcf;p=spectrwm.git Kill bar script on an unclean exit. --- diff --git a/spectrwm.c b/spectrwm.c index decf39c..ee48397 100644 --- a/spectrwm.c +++ b/spectrwm.c @@ -917,6 +917,7 @@ struct key *key_lookup(unsigned int, KeySym); void key_remove(struct key *); void key_replace(struct key *, unsigned int, KeySym, enum keyfuncid, const char *); +void kill_bar_extra_atexit(void); void kill_refs(struct ws_win *); #ifdef SWM_DEBUG void leavenotify(xcb_leave_notify_event_t *); @@ -2337,6 +2338,8 @@ bar_extra_setup(void) close(bar_pipe[1]); break; } + + atexit(kill_bar_extra_atexit); } num_screens = xcb_setup_roots_length(xcb_get_setup(conn)); @@ -2354,6 +2357,13 @@ bar_extra_setup(void) xcb_flush(conn); } +void +kill_bar_extra_atexit(void) +{ + if (bar_pid) + kill(bar_pid, SIGTERM); +} + int isxlfd(char *s) {