diff options
author | Dmitriy Vyukov <dvyukov@google.com> | 2012-01-13 22:22:03 +0400 |
---|---|---|
committer | Dmitriy Vyukov <dvyukov@google.com> | 2012-01-13 22:22:03 +0400 |
commit | a4f7024e0af60c548ec1c066ef77e0b2fda2cb21 (patch) | |
tree | cb36a3c90ffb8c499da79c3af91dcff3197c1013 | |
parent | c7cdce13f55070383efd8251bce6e95118c32bb2 (diff) | |
download | go-a4f7024e0af60c548ec1c066ef77e0b2fda2cb21.tar.gz go-a4f7024e0af60c548ec1c066ef77e0b2fda2cb21.zip |
cmd/go: fix data race during build
Fixes #2695.
R=golang-dev, mpimenov, minux.ma, rsc
CC=golang-dev
https://golang.org/cl/5545052
-rw-r--r-- | src/cmd/go/build.go | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/cmd/go/build.go b/src/cmd/go/build.go index 4a046391db..77a64f406e 100644 --- a/src/cmd/go/build.go +++ b/src/cmd/go/build.go @@ -873,6 +873,8 @@ func (b *builder) runOut(dir string, desc string, cmdargs ...interface{}) ([]byt // mkdir makes the named directory. func (b *builder) mkdir(dir string) error { + b.exec.Lock() + defer b.exec.Unlock() // We can be a little aggressive about being // sure directories exist. Skip repeated calls. if b.mkdirCache[dir] { |