aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Brainman <alex.brainman@gmail.com>2011-04-01 13:38:33 +1100
committerAlex Brainman <alex.brainman@gmail.com>2011-04-01 13:38:33 +1100
commit799be52b358c85b843c31f9aac7ed04d0349e501 (patch)
tree05fe2e62fc23f1507d3c195c902540c18f5476d3
parent6c651728d8d0871afb3cf0fb846d4bc2f888b310 (diff)
downloadgo-799be52b358c85b843c31f9aac7ed04d0349e501.tar.gz
go-799be52b358c85b843c31f9aac7ed04d0349e501.zip
gotest: another attempt to make it run on Windows
R=golang-dev, rsc1 CC=golang-dev https://golang.org/cl/4347041
-rw-r--r--src/cmd/gotest/gotest.go9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/cmd/gotest/gotest.go b/src/cmd/gotest/gotest.go
index d110a8d1a5..f69c7286fc 100644
--- a/src/cmd/gotest/gotest.go
+++ b/src/cmd/gotest/gotest.go
@@ -252,7 +252,14 @@ func doRun(argv []string, returnStdout bool) string {
}
if runtime.GOOS == "windows" && argv[0] == "gomake" {
// gomake is a shell script and it cannot be executed directly on Windows.
- argv = append([]string{"cmd", "/c", "sh", "-c"}, strings.Join(argv, " "))
+ cmd := ""
+ for i, v := range argv {
+ if i > 0 {
+ cmd += " "
+ }
+ cmd += `"` + v + `"`
+ }
+ argv = []string{"cmd", "/c", "sh", "-c", cmd}
}
var err os.Error
argv[0], err = exec.LookPath(argv[0])