Support atomic directory promotion across platforms
This commit is contained in:
19
internal/fileops/rename_noreplace_windows.go
Normal file
19
internal/fileops/rename_noreplace_windows.go
Normal file
@@ -0,0 +1,19 @@
|
||||
//go:build windows
|
||||
|
||||
package fileops
|
||||
|
||||
import "golang.org/x/sys/windows"
|
||||
|
||||
func checkAtomicDirectoryPromotionSupport() error { return nil }
|
||||
|
||||
func renameDirectoryNoReplace(src, dst string) error {
|
||||
from, err := windows.UTF16PtrFromString(src)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
to, err := windows.UTF16PtrFromString(dst)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return windows.MoveFileEx(from, to, 0)
|
||||
}
|
||||
Reference in New Issue
Block a user