aboutsummaryrefslogtreecommitdiff
path: root/src/os/path_windows.go
diff options
context:
space:
mode:
authorqmuntal <quimmuntal@gmail.com>2023-08-08 15:31:43 +0200
committerQuim Muntal <quimmuntal@gmail.com>2023-08-09 15:15:57 +0000
commitcd589c8a73415afbf94a8976f20cbed9d4061ba6 (patch)
tree4570b35a090562f95db0b5fcfea51c9a00ea6b7b /src/os/path_windows.go
parentf617a6c8bf1ee3e54459f60acd2ec85ff31f6d4c (diff)
downloadgo-cd589c8a73415afbf94a8976f20cbed9d4061ba6.tar.xz
os: make MkdirAll support volume names
MkdirAll fails to create directories under root paths using volume names (e.g. //?/Volume{GUID}/foo). This is because fixRootDirectory only handle extended length paths using drive letters (e.g. //?/C:/foo). This CL fixes that issue by also detecting volume names without path separator. Updates #22230 Fixes #39785 Change-Id: I813fdc0b968ce71a4297f69245b935558e6cd789 Reviewed-on: https://go-review.googlesource.com/c/go/+/517015 Run-TryBot: Quim Muntal <quimmuntal@gmail.com> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Bryan Mills <bcmills@google.com> Reviewed-by: Michael Knyszek <mknyszek@google.com>
Diffstat (limited to 'src/os/path_windows.go')
-rw-r--r--src/os/path_windows.go11
1 files changed, 0 insertions, 11 deletions
diff --git a/src/os/path_windows.go b/src/os/path_windows.go
index 3356908a36..ec9a87274d 100644
--- a/src/os/path_windows.go
+++ b/src/os/path_windows.go
@@ -214,14 +214,3 @@ func fixLongPath(path string) string {
}
return string(pathbuf[:w])
}
-
-// fixRootDirectory fixes a reference to a drive's root directory to
-// have the required trailing slash.
-func fixRootDirectory(p string) string {
- if len(p) == len(`\\?\c:`) {
- if IsPathSeparator(p[0]) && IsPathSeparator(p[1]) && p[2] == '?' && IsPathSeparator(p[3]) && p[5] == ':' {
- return p + `\`
- }
- }
- return p
-}