aboutsummaryrefslogtreecommitdiff
path: root/src/pkg/exec/exec.go
diff options
context:
space:
mode:
authorGustavo Niemeyer <gustavo@niemeyer.net>2011-02-01 12:12:51 -0500
committerRuss Cox <rsc@golang.org>2011-02-01 12:12:51 -0500
commit59a47732dd2273f7077cb717d4aedf8c3d64aa5a (patch)
treead6f0182a2f211277f19af3c74c0c2ee46203a09 /src/pkg/exec/exec.go
parente6a934a1d9258a6990724774995770d9bb5fea4b (diff)
downloadgo-59a47732dd2273f7077cb717d4aedf8c3d64aa5a.tar.xz
exec: use custom error for LookPath
Make the error message and the needed action more obvious when a command isn't found to obtain the source code of a project. Users seem to strugle with the existing wording in practice. R=rsc CC=golang-dev https://golang.org/cl/4058047
Diffstat (limited to 'src/pkg/exec/exec.go')
-rw-r--r--src/pkg/exec/exec.go11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/pkg/exec/exec.go b/src/pkg/exec/exec.go
index ba9bd2472a..4f4c8c7770 100644
--- a/src/pkg/exec/exec.go
+++ b/src/pkg/exec/exec.go
@@ -7,6 +7,7 @@ package exec
import (
"os"
+ "strconv"
)
// Arguments to Run.
@@ -29,6 +30,16 @@ type Cmd struct {
Pid int
}
+// PathError records the name of a binary that was not
+// found on the current $PATH.
+type PathError struct {
+ Name string
+}
+
+func (e *PathError) String() string {
+ return "command " + strconv.Quote(e.Name) + " not found in $PATH"
+}
+
// Given mode (DevNull, etc), return file for child
// and file to record in Cmd structure.
func modeToFiles(mode, fd int) (*os.File, *os.File, os.Error) {