]> Cypherpunks repositories - gostls13.git/commitdiff
cmd/go: fix data race during build
authorDmitriy Vyukov <dvyukov@google.com>
Fri, 13 Jan 2012 18:22:03 +0000 (22:22 +0400)
committerDmitriy Vyukov <dvyukov@google.com>
Fri, 13 Jan 2012 18:22:03 +0000 (22:22 +0400)
Fixes #2695.

R=golang-dev, mpimenov, minux.ma, rsc
CC=golang-dev
https://golang.org/cl/5545052

src/cmd/go/build.go

index 4a046391db818071d3ad6e281e9251ea5513a882..77a64f406e316a10f85e31baa86a176ffbeb6ce2 100644 (file)
@@ -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] {