aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRuss Cox <rsc@golang.org>2010-03-20 22:38:06 -0700
committerRuss Cox <rsc@golang.org>2010-03-20 22:38:06 -0700
commit2e5fe5a14c8b9578064c686a2b62328c84136f48 (patch)
tree51cd038a4bd1f195d969aa62bdf668a4535a7c12
parent2243fe9fc1aa567e05bee1c025503616c7346e88 (diff)
downloadgo-2e5fe5a14c8b9578064c686a2b62328c84136f48.tar.gz
go-2e5fe5a14c8b9578064c686a2b62328c84136f48.zip
goinstall: let git/hg/svn create the final directory element
R=r CC=golang-dev https://golang.org/cl/634044
-rw-r--r--src/cmd/goinstall/download.go4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/cmd/goinstall/download.go b/src/cmd/goinstall/download.go
index 67f389abac..13a2f65ab8 100644
--- a/src/cmd/goinstall/download.go
+++ b/src/cmd/goinstall/download.go
@@ -9,6 +9,7 @@ package main
import (
"http"
"os"
+ "path"
"regexp"
"strings"
)
@@ -130,7 +131,8 @@ func vcsCheckout(vcs *vcs, dst, repo, dashpath string) os.Error {
return os.ErrorString("not a directory: " + dst)
}
if err != nil {
- if err := os.MkdirAll(dst, 0777); err != nil {
+ parent, _ := path.Split(dst)
+ if err := os.MkdirAll(parent, 0777); err != nil {
return err
}
if err := run("/", nil, vcs.cmd, vcs.clone, repo, dst); err != nil {