summaryrefslogtreecommitdiff
path: root/src
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
commitda9aa35fe1c0d778f000bc79d0bfc386b13f959e (patch)
tree6bb9474df94cb39d5fc52013429650cc8c6a4769 /src
parentd9cf5b572c4a8fff4b16bb134b53ab6a53f8909e (diff)
downloadgolang-da9aa35fe1c0d778f000bc79d0bfc386b13f959e.tar.gz
goinstall: let git/hg/svn create the final directory element
R=r CC=golang-dev http://codereview.appspot.com/634044
Diffstat (limited to 'src')
-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 {