sinit

suckless init
git clone git://git.suckless.org/sinit
Log | Files | Refs | README | LICENSE

commit 314b062efc5961bc3743df484a5cea9e7e62181f
parent 11333316755b558ba963ad7b8a6b169f762fadfa
Author: sin <sin@2f30.org>
Date:   Fri,  7 Feb 2014 21:06:13 +0000

We'll get a SIGCHLD so no need to double-fork

Diffstat:
Msinit.c | 7-------
1 file changed, 0 insertions(+), 7 deletions(-)

diff --git a/sinit.c b/sinit.c @@ -113,7 +113,6 @@ sigreboot(void) static void spawn(const Arg *arg) { - int status; pid_t pid; char *const *p = arg->v; @@ -121,16 +120,10 @@ spawn(const Arg *arg) if (pid < 0) { weprintf("sinit: fork:"); } else if (pid == 0) { - pid = fork(); - if (pid < 0) - weprintf("sinit: fork:"); - else if (pid > 0) - exit(0); setsid(); setpgid(0, 0); execvp(*p, p); weprintf("sinit: execvp %s:", p); _exit(errno == ENOENT ? 127 : 126); } - waitpid(pid, &status, 0); }