summaryrefslogtreecommitdiff
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
commit0a6f9f8d2fb76fcfbb2c60ce5cfc5eef51b962fa (patch)
tree6bb9474df94cb39d5fc52013429650cc8c6a4769
parent214ba1982052e1013b5bdb811b7fdd1612208a92 (diff)
downloadgo-0a6f9f8d2fb76fcfbb2c60ce5cfc5eef51b962fa.tar.gz
goinstall: let git/hg/svn create the final directory element
R=r CC=golang-dev http://codereview.appspot.com/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 67f389aba..13a2f65ab 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 {