aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorapocelipes <seve3r@outlook.com>2024-10-21 15:28:25 +0000
committerGopher Robot <gobot@golang.org>2024-10-23 15:16:26 +0000
commit263b5ecba78f5fa503d1e47ad469d12b45e0a149 (patch)
tree9cc9631841f278f1bf77000bdbc3760f28ec530a /src
parent32f4864216366f355a589c99a8d789f3341bc85c (diff)
downloadgo-263b5ecba78f5fa503d1e47ad469d12b45e0a149.tar.xz
os: use sync.OnceValue
Simplify the code and reduce global variables. Change-Id: Id322836e8b6b6c4434136b95700ed4070ba52300 GitHub-Last-Rev: 7c9d409855c682b6de1f338f69d9193a7887f9f0 GitHub-Pull-Request: golang/go#69962 Reviewed-on: https://go-review.googlesource.com/c/go/+/621456 Reviewed-by: Michael Pratt <mpratt@google.com> Auto-Submit: Ian Lance Taylor <iant@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Ian Lance Taylor <iant@google.com> Reviewed-by: Tobias Klauser <tobias.klauser@gmail.com>
Diffstat (limited to 'src')
-rw-r--r--src/os/file_windows.go12
1 files changed, 4 insertions, 8 deletions
diff --git a/src/os/file_windows.go b/src/os/file_windows.go
index f8a6c09bb5..465cf5d186 100644
--- a/src/os/file_windows.go
+++ b/src/os/file_windows.go
@@ -223,17 +223,13 @@ func Pipe() (r *File, w *File, err error) {
return newFile(p[0], "|0", "pipe"), newFile(p[1], "|1", "pipe"), nil
}
-var (
- useGetTempPath2Once sync.Once
- useGetTempPath2 bool
-)
+var useGetTempPath2 = sync.OnceValue(func() bool {
+ return windows.ErrorLoadingGetTempPath2() == nil
+})
func tempDir() string {
- useGetTempPath2Once.Do(func() {
- useGetTempPath2 = (windows.ErrorLoadingGetTempPath2() == nil)
- })
getTempPath := syscall.GetTempPath
- if useGetTempPath2 {
+ if useGetTempPath2() {
getTempPath = windows.GetTempPath2
}
n := uint32(syscall.MAX_PATH)