Mercurial > dwm-meillo
diff util.c @ 5:e5018cae273f
added several other stuff
author | Anselm R. Garbe <garbeam@wmii.de> |
---|---|
date | Mon, 10 Jul 2006 22:16:48 +0200 |
parents | e969f3575b7a |
children | e0cefb3981c8 |
line wrap: on
line diff
--- a/util.c Mon Jul 10 19:47:35 2006 +0200 +++ b/util.c Mon Jul 10 22:16:48 2006 +0200 @@ -7,6 +7,11 @@ #include <stdio.h> #include <stdlib.h> #include <string.h> +#include <sys/types.h> +#include <sys/wait.h> +#include <unistd.h> + +#include "util.h" void error(char *errstr, ...) { @@ -75,3 +80,21 @@ *p1 = *p2; *p2 = tmp; } + +void +spawn(Display *dpy, const char *shell, const char *cmd) +{ + if(!cmd || !shell) + return; + if(fork() == 0) { + if(fork() == 0) { + if(dpy) + close(ConnectionNumber(dpy)); + execl(shell, shell, "-c", cmd, (const char *)0); + fprintf(stderr, "gridwm: execl %s", shell); + perror(" failed"); + } + exit (0); + } + wait(0); +}