aboutsummaryrefslogtreecommitdiff
path: root/src/os/exec/exec.go
diff options
context:
space:
mode:
authorTom Lanyon <tomlanyon@google.com>2017-11-23 12:21:25 +1100
committerRob Pike <r@golang.org>2017-11-23 20:01:56 +0000
commitc866110689796c42ab379de1402462d03dfe23fa (patch)
treee34fcf52d691ddf48ebb94f2e27b5beee59d1dd3 /src/os/exec/exec.go
parente22d79ec1d6f6bae0fbc0d658baf7718c9dd01b0 (diff)
downloadgo-c866110689796c42ab379de1402462d03dfe23fa.tar.gz
go-c866110689796c42ab379de1402462d03dfe23fa.zip
os/exec: Stdout/Stderr doc cleanup.
Following comments on CL 76320. Breaks Cmd.Std{out,err} doc into three paragraphs and updates Cmd.Stdin formatting to match. Fixes an erroneous reference to Stdin in the output goroutine comment, while keeping the wording consistent between Stdin and Stdout/Stderr. Change-Id: I186a0e2d4b85dfb939443a17e62a1eb2ef64b1bf Reviewed-on: https://go-review.googlesource.com/79595 Reviewed-by: Rob Pike <r@golang.org>
Diffstat (limited to 'src/os/exec/exec.go')
-rw-r--r--src/os/exec/exec.go18
1 files changed, 10 insertions, 8 deletions
diff --git a/src/os/exec/exec.go b/src/os/exec/exec.go
index 4a5789647f..8a49fe3b58 100644
--- a/src/os/exec/exec.go
+++ b/src/os/exec/exec.go
@@ -77,9 +77,12 @@ type Cmd struct {
Dir string
// 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
@@ -92,14 +95,13 @@ type Cmd struct {
// If either is nil, Run connects the corresponding file descriptor
// to the null device (os.DevNull).
//
- // If either is an *os.File, the process's standard output or standard
- // error, respectively, are connected directly to that file. Otherwise,
- // if either is not nil, during the execution of the command a separate
- // goroutine reads from the process's standard output or standard error
- // and delivers that to Stdout or Stderr. 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.
+ // If either is an *os.File, the corresponding output from the process
+ // is connected directly to that file.
+ //
+ // Otherwise, during the execution of the command a separate goroutine
+ // reads from the process over a pipe and delivers that data to the
+ // corresponding Writer. In this case, Wait does not complete until the
+ // goroutine reaches EOF or encounters an error.
//
// If Stdout and Stderr are the same writer, and have a type that can
// be compared with ==, at most one goroutine at a time will call Write.