Skip to content

Commit

Permalink
misc/cgo/testshared: explicitly set GOBIN (instead of unsetting it)
Browse files Browse the repository at this point in the history
If GOBIN is set in the GOENV file, then merely unsetting it in the
process environment is not sufficient. We can instead either set GOBIN
explicitly, or disable GOENV explicitly. For now, we (semi-arbitrary)
choose the former.

Fixes #37390

Change-Id: Iec54532c804b70546d695105cd89e9169eac5dbb
Reviewed-on: https://go-review.googlesource.com/c/go/+/220652
Run-TryBot: Bryan C. Mills <[email protected]>
TryBot-Result: Gobot Gobot <[email protected]>
Reviewed-by: Ian Lance Taylor <[email protected]>
  • Loading branch information
Bryan C. Mills committed Feb 24, 2020
1 parent bc98e35 commit 5c7dbf4
Showing 1 changed file with 2 additions and 4 deletions.
6 changes: 2 additions & 4 deletions misc/cgo/testshared/shared_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -105,6 +105,8 @@ func testMain(m *testing.M) (int, error) {
fmt.Printf("+ cd %s\n", modRoot)
}
os.Setenv("GOPATH", gopath)
// Explicitly override GOBIN as well, in case it was set through a GOENV file.
os.Setenv("GOBIN", filepath.Join(gopath, "bin"))
os.Chdir(modRoot)
os.Setenv("PWD", modRoot)

Expand Down Expand Up @@ -153,10 +155,6 @@ func TestMain(m *testing.M) {
log.SetFlags(log.Lshortfile)
flag.Parse()

// Some of the tests install binaries into a custom GOPATH.
// That won't work if GOBIN is set.
os.Unsetenv("GOBIN")

exitCode, err := testMain(m)
if err != nil {
log.Fatal(err)
Expand Down

0 comments on commit 5c7dbf4

Please sign in to comment.