From: Ian Lance Taylor Date: Mon, 20 Jun 2016 16:16:17 +0000 (-0700) Subject: runtime: set PPROF_TMPDIR before running pprof X-Git-Tag: go1.7rc1~79 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=659b9a19aa509df35f984276e177c68ff7f6f632;p=gostls13.git runtime: set PPROF_TMPDIR before running pprof Fixes #16121. Change-Id: I7b838fb6fb9f098e6c348d67379fdc81fb0d69a4 Reviewed-on: https://go-review.googlesource.com/24270 Run-TryBot: Ian Lance Taylor TryBot-Result: Gobot Gobot Reviewed-by: Michael Hudson-Doyle --- diff --git a/src/runtime/crash_cgo_test.go b/src/runtime/crash_cgo_test.go index 9e1811aa16..2504bd0f41 100644 --- a/src/runtime/crash_cgo_test.go +++ b/src/runtime/crash_cgo_test.go @@ -252,7 +252,21 @@ func testCgoPprof(t *testing.T, buildArg, runArg string) { fn := strings.TrimSpace(string(got)) defer os.Remove(fn) - top, err := exec.Command("go", "tool", "pprof", "-top", "-nodecount=1", exe, fn).CombinedOutput() + cmd := testEnv(exec.Command("go", "tool", "pprof", "-top", "-nodecount=1", exe, fn)) + + found := false + for i, e := range cmd.Env { + if strings.HasPrefix(e, "PPROF_TMPDIR=") { + cmd.Env[i] = "PPROF_TMPDIR=" + os.TempDir() + found = true + break + } + } + if !found { + cmd.Env = append(cmd.Env, "PPROF_TMPDIR="+os.TempDir()) + } + + top, err := cmd.CombinedOutput() t.Logf("%s", top) if err != nil { t.Fatal(err)