From b0b06558d4185f689b8f436a6b42b2fa23a0b41d Mon Sep 17 00:00:00 2001 From: Darren Shepherd Date: Thu, 11 Feb 2016 08:57:57 -0700 Subject: [PATCH] Minor cleanup to not use the setsid binary --- cmd/respawn/respawn.go | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/cmd/respawn/respawn.go b/cmd/respawn/respawn.go index 59599042..1cb34012 100644 --- a/cmd/respawn/respawn.go +++ b/cmd/respawn/respawn.go @@ -6,6 +6,7 @@ import ( "os" "os/exec" "os/signal" + "runtime" "strings" "sync" "syscall" @@ -22,6 +23,8 @@ var ( ) func Main() { + runtime.GOMAXPROCS(1) + runtime.LockOSThread() app := cli.NewApp() app.Flags = []cli.Flag{ @@ -109,9 +112,12 @@ func execute(line string, wg *sync.WaitGroup) { for { args := strings.Split(line, " ") - cmd := exec.Command("setsid", args...) + cmd := exec.Command(args[0], args[1:]...) cmd.Stdout = os.Stdout cmd.Stderr = os.Stderr + cmd.SysProcAttr = &syscall.SysProcAttr{ + Setsid: true, + } err := cmd.Start() if err != nil {