]> Cypherpunks repositories - gostls13.git/commitdiff
cmd/go: close unintentionally left open file
authorAlex Brainman <alex.brainman@gmail.com>
Thu, 9 Nov 2017 23:26:05 +0000 (10:26 +1100)
committerAlex Brainman <alex.brainman@gmail.com>
Fri, 10 Nov 2017 01:31:02 +0000 (01:31 +0000)
cmd/go/internal/work.Builder.updateBuildID left a file opened.
But opened files cannot be deleted on Windows, so cmd/go just
leaves these files in %TMP% directory.

Close the file so deletion can succeed.

Fixes #22650

Change-Id: Ia3ea62f6ec7208d73972eae2e17fb4a766407914
Reviewed-on: https://go-review.googlesource.com/76810
Reviewed-by: Dave Cheney <dave@cheney.net>
Run-TryBot: Alex Brainman <alex.brainman@gmail.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>

src/cmd/go/internal/work/buildid.go

index d7cc7a263b20b59073227b0fc198796072c4e4cc..caf6195abb5a950867c002a988f6a53b444f6f6a 100644 (file)
@@ -448,6 +448,7 @@ func (b *Builder) updateBuildID(a *Action, target string, rewrite bool) error {
                r, err := os.Open(target)
                if err == nil {
                        c.Put(a.actionID, r)
+                       r.Close()
                }
        }