runtime: leave directory before removing it in TestDLLPreloadMitigation
Fixes #15120
Change-Id: I1d9a192ac163826bad8b46e8c0b0b9e218e69570
Reviewed-on: https://go-review.googlesource.com/21520
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
diff --git a/src/runtime/syscall_windows_test.go b/src/runtime/syscall_windows_test.go
index 0b3ebe5..ff04533 100644
--- a/src/runtime/syscall_windows_test.go
+++ b/src/runtime/syscall_windows_test.go
@@ -780,6 +780,17 @@
t.Skip("skipping test: gcc is missing")
}
+ tmpdir, err := ioutil.TempDir("", "TestDLLPreloadMitigation")
+ if err != nil {
+ t.Fatal("TempDir failed: ", err)
+ }
+ defer func() {
+ err := os.RemoveAll(tmpdir)
+ if err != nil {
+ t.Error(err)
+ }
+ }()
+
dir0, err := os.Getwd()
if err != nil {
t.Fatal(err)
@@ -794,12 +805,6 @@
SetLastError(123);
}
`
- tmpdir, err := ioutil.TempDir("", "TestDLLPreloadMitigation")
- if err != nil {
- t.Fatal("TempDir failed: ", err)
- }
- defer os.RemoveAll(tmpdir)
-
srcname := "nojack.c"
err = ioutil.WriteFile(filepath.Join(tmpdir, srcname), []byte(src), 0)
if err != nil {