-
Notifications
You must be signed in to change notification settings - Fork 38
Open
Labels
help wantedExtra attention is neededExtra attention is needed
Description
The following logic:
cap-std/cap-primitives/src/windows/fs/get_path.rs
Lines 18 to 22 in 72fdc30
| let wide_final = if wide.starts_with(&['\\' as u16, '\\' as _, '?' as _, '\\' as _]) { | |
| &wide[4..] | |
| } else { | |
| &wide | |
| }; |
completely breaks DOS device UNC paths such as:
\\?\UNC\server\share\bar.exe
which would have to be translated to:
\\server\share\bar.exe
in addition to that, other DOS device paths such as:
\\?\Volume{b75e2c83-0000-0000-0000-602f00000000}\Test\Foo.txt
get completely ruined.
There also is a lack of \\.\ handling. I'm also not sure why this gets stripped in the first place, join can handle these paths just fine.
Metadata
Metadata
Assignees
Labels
help wantedExtra attention is neededExtra attention is needed