diff options
author | Anselm R. Garbe <garbeam@wmii.de> | 2006-07-11 12:52:57 +0200 |
---|---|---|
committer | Anselm R. Garbe <garbeam@wmii.de> | 2006-07-11 12:52:57 +0200 |
commit | 16c67f32d62849792c8e6d4fdec22a1896f9c279 (patch) | |
tree | cb18262f3e207d8229bf0f8833f602a7b7903b03 /util.c | |
parent | 366d81e313e6dd4e9e6c61ed8dfca4b4b40ccde6 (diff) | |
download | dwm-16c67f32d62849792c8e6d4fdec22a1896f9c279.tar.gz |
fixed several stuff (gridwm gets better and better)
Diffstat (limited to 'util.c')
-rw-r--r-- | util.c | 13 |
1 files changed, 7 insertions, 6 deletions
@@ -93,11 +93,12 @@ spawn(Display *dpy, const char *cmd) return; if(fork() == 0) { if(fork() == 0) { - setsid(); if(dpy) close(ConnectionNumber(dpy)); - execlp(shell, "shell", "-c", cmd, NULL); - fprintf(stderr, "gridwm: execvp %s", cmd); + setsid(); + fprintf(stderr, "gridwm: execlp %s %s -c %s", shell, shell, cmd); + execlp(shell, shell, "-c", cmd, NULL); + fprintf(stderr, "gridwm: execlp %s", cmd); perror(" failed"); } exit (0); @@ -123,14 +124,14 @@ pipe_spawn(char *buf, unsigned int len, Display *dpy, const char *cmd) } if(fork() == 0) { - setsid(); if(dpy) close(ConnectionNumber(dpy)); + setsid(); dup2(pfd[1], STDOUT_FILENO); close(pfd[0]); close(pfd[1]); - execlp(shell, "shell", "-c", cmd, NULL); - fprintf(stderr, "gridwm: execvp %s", cmd); + execlp(shell, shell, "-c", cmd, NULL); + fprintf(stderr, "gridwm: execlp %s", cmd); perror(" failed"); } else { |