aboutsummaryrefslogtreecommitdiff
path: root/src/os
diff options
context:
space:
mode:
authorqmuntal <quimmuntal@gmail.com>2024-03-11 18:16:16 +0100
committerQuim Muntal <quimmuntal@gmail.com>2024-03-13 19:10:34 +0000
commit418e6d559e80e9d53e4a4c94656e8fb4bf72b343 (patch)
treebd76a1f7ab9e3488f0ba64a7021f4787694ce04b /src/os
parent381ba9f64cce0e40889d0eec3efef4ca9bb0cf26 (diff)
downloadgo-418e6d559e80e9d53e4a4c94656e8fb4bf72b343.tar.gz
go-418e6d559e80e9d53e4a4c94656e8fb4bf72b343.zip
os,internal/godebugs: add missing IncNonDefault calls
Fixes #66215 Change-Id: Id7de15feabe08f66c048dc114c09494813c9febc Reviewed-on: https://go-review.googlesource.com/c/go/+/570695 Reviewed-by: Cherry Mui <cherryyz@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Ian Lance Taylor <iant@google.com>
Diffstat (limited to 'src/os')
-rw-r--r--src/os/file_windows.go1
-rw-r--r--src/os/types_windows.go13
2 files changed, 12 insertions, 2 deletions
diff --git a/src/os/file_windows.go b/src/os/file_windows.go
index 49fdd8d44d..fcdb5f2e8f 100644
--- a/src/os/file_windows.go
+++ b/src/os/file_windows.go
@@ -378,6 +378,7 @@ func normaliseLinkPath(path string) (string, error) {
if winreadlinkvolume.Value() != "0" {
return `\\?\` + path[4:], nil
}
+ winreadlinkvolume.IncNonDefault()
h, err := openSymlink(path)
if err != nil {
diff --git a/src/os/types_windows.go b/src/os/types_windows.go
index c4a8721924..16042fea51 100644
--- a/src/os/types_windows.go
+++ b/src/os/types_windows.go
@@ -161,10 +161,19 @@ func (fs *fileStat) Size() int64 {
var winsymlink = godebug.New("winsymlink")
-func (fs *fileStat) Mode() (m FileMode) {
+func (fs *fileStat) Mode() FileMode {
+ m := fs.mode()
if winsymlink.Value() == "0" {
- return fs.modePreGo1_23()
+ old := fs.modePreGo1_23()
+ if old != m {
+ winsymlink.IncNonDefault()
+ m = old
+ }
}
+ return m
+}
+
+func (fs *fileStat) mode() (m FileMode) {
if fs.FileAttributes&syscall.FILE_ATTRIBUTE_READONLY != 0 {
m |= 0444
} else {