os/exec: document that Stdin goroutine must finish in Wait

Fixes #7990.

LGTM=iant, bradfitz
R=bradfitz, iant, robryk
CC=golang-codereviews
https://golang.org/cl/156220043
This commit is contained in:
Russ Cox 2014-10-15 13:09:59 -04:00
parent db4dad7fd7
commit 05c4b69f84
1 changed files with 9 additions and 2 deletions

View File

@ -55,8 +55,15 @@ type Cmd struct {
// calling process's current directory.
Dir string
// Stdin specifies the process's standard input. If Stdin is
// nil, the process reads from the null device (os.DevNull).
// Stdin specifies the process's standard input.
// If Stdin is nil, the process reads from the null device (os.DevNull).
// If Stdin is an *os.File, the process's standard input is connected
// directly to that file.
// Otherwise, during the execution of the command a separate
// goroutine reads from Stdin and delivers that data to the command
// over a pipe. In this case, Wait does not complete until the goroutine
// stops copying, either because it has reached the end of Stdin
// (EOF or a read error) or because writing to the pipe returned an error.
Stdin io.Reader
// Stdout and Stderr specify the process's standard output and error.