internal/version: update PWD in the environment for commands that set Dir
Updates golang/go#50599.
Change-Id: I5702de0d6e23fa2ae1a03b0f47464170d4b691c0
Reviewed-on: https://go-review.googlesource.com/c/dl/+/380503
Trust: Bryan Mills <bcmills@google.com>
Run-TryBot: Bryan Mills <bcmills@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org>
diff --git a/internal/version/gotip.go b/internal/version/gotip.go
index 61515a1..4048422 100644
--- a/internal/version/gotip.go
+++ b/internal/version/gotip.go
@@ -57,11 +57,13 @@
cmd.Stdout = os.Stdout
cmd.Stderr = os.Stderr
cmd.Dir = root
+ cmd.Env = dedupEnv(caseInsensitiveEnv, append(os.Environ(), "PWD="+cmd.Dir))
return cmd.Run()
}
gitOutput := func(args ...string) ([]byte, error) {
cmd := exec.Command("git", args...)
cmd.Dir = root
+ cmd.Env = dedupEnv(caseInsensitiveEnv, append(os.Environ(), "PWD="+cmd.Dir))
return cmd.Output()
}
@@ -154,7 +156,11 @@
return fmt.Errorf("failed to detect an existing go installation for bootstrap: %v", err)
}
cmd.Env = append(os.Environ(), "GOROOT_BOOTSTRAP="+strings.TrimSpace(string(goroot)))
+ } else {
+ cmd.Env = os.Environ()
}
+ cmd.Env = dedupEnv(caseInsensitiveEnv, append(cmd.Env, "PWD="+cmd.Dir))
+
if err := cmd.Run(); err != nil {
return fmt.Errorf("failed to build go: %v", err)
}