From: Bryan C. Mills Date: Mon, 24 Feb 2020 18:58:29 +0000 (-0500) Subject: misc/cgo/testshared: explicitly set GOBIN (instead of unsetting it) X-Git-Tag: go1.15beta1~1100 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=5c7dbf40e1e0af9d8fc4521e1ce7bd0afaa1f2c4;p=gostls13.git misc/cgo/testshared: explicitly set GOBIN (instead of unsetting it) 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 TryBot-Result: Gobot Gobot Reviewed-by: Ian Lance Taylor --- diff --git a/misc/cgo/testshared/shared_test.go b/misc/cgo/testshared/shared_test.go index b9ef6dad8e..c7f15b8e89 100644 --- a/misc/cgo/testshared/shared_test.go +++ b/misc/cgo/testshared/shared_test.go @@ -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) @@ -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)