diff options
| -rw-r--r-- | dwm.c | 8 | 
1 files changed, 8 insertions, 0 deletions
| @@ -1647,12 +1647,20 @@ showhide(Client *c)  void  spawn(const Arg *arg)  { +	struct sigaction sa; +  	if (arg->v == dmenucmd)  		dmenumon[0] = '0' + selmon->num;  	if (fork() == 0) {  		if (dpy)  			close(ConnectionNumber(dpy));  		setsid(); + +		sigemptyset(&sa.sa_mask); +		sa.sa_flags = 0; +		sa.sa_handler = SIG_DFL; +		sigaction(SIGCHLD, &sa, NULL); +  		execvp(((char **)arg->v)[0], (char **)arg->v);  		die("dwm: execvp '%s' failed:", ((char **)arg->v)[0]);  	} | 
