From: Dmitriy Vyukov Date: Tue, 28 May 2013 17:09:27 +0000 (+0400) Subject: os/exec: fix test hang X-Git-Tag: go1.2rc2~1395 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=4d6bfcf24504bb2de0bf63bf43ad703ba808a3e9;p=gostls13.git os/exec: fix test hang Currently the test closes random files descriptors, which leads to hang (in particular if netpoll fd is closed). Try to open only fd 3, since the parent process expects it to be fd 3 anyway. Fixes #5571. R=golang-dev, r CC=golang-dev https://golang.org/cl/9778048 --- diff --git a/src/pkg/os/exec/exec_test.go b/src/pkg/os/exec/exec_test.go index 6f5860e955..eae9fb1441 100644 --- a/src/pkg/os/exec/exec_test.go +++ b/src/pkg/os/exec/exec_test.go @@ -540,13 +540,11 @@ func TestHelperProcess(*testing.T) { n, _ := strconv.Atoi(args[0]) os.Exit(n) case "describefiles": - for fd := uintptr(3); fd < 25; fd++ { - f := os.NewFile(fd, fmt.Sprintf("fd-%d", fd)) - ln, err := net.FileListener(f) - if err == nil { - fmt.Printf("fd%d: listener %s\n", fd, ln.Addr()) - ln.Close() - } + f := os.NewFile(3, fmt.Sprintf("fd3")) + ln, err := net.FileListener(f) + if err == nil { + fmt.Printf("fd3: listener %s\n", ln.Addr()) + ln.Close() } os.Exit(0) case "extraFilesAndPipes":