github.com/octohelm/cuemod@v0.9.4/internal/cmd/go/internals/modload/stat_windows.go (about)

     1  // Copyright 2019 The Go Authors. All rights reserved.
     2  // Use of this source code is governed by a BSD-style
     3  // license that can be found in the LICENSE file.
     4  
     5  //go:build windows
     6  
     7  package modload
     8  
     9  import "io/fs"
    10  
    11  // hasWritePerm reports whether the current user has permission to write to the
    12  // file with the given info.
    13  func hasWritePerm(_ string, fi fs.FileInfo) bool {
    14  	// Windows has a read-only attribute independent of ACLs, so use that to
    15  	// determine whether the file is intended to be overwritten.
    16  	//
    17  	// Per https://golang.org/pkg/os/#Chmod:
    18  	// “On Windows, only the 0200 bit (owner writable) of mode is used; it
    19  	// controls whether the file's read-only attribute is set or cleared.”
    20  	return fi.Mode()&0200 != 0
    21  }