Cygwin: Handle virtual drives as non-symlinks
This avoids MAX_PATH-related problems in native tools in case the virtual drive points to a deep directory Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
This commit is contained in:
parent
7b8edba625
commit
c8949d0400
|
@ -3495,14 +3495,9 @@ restart:
|
||||||
|
|
||||||
subst X: C:\foo\bar
|
subst X: C:\foo\bar
|
||||||
|
|
||||||
Treat it like a symlink. This is required to tell an
|
Treat it as a normal file. */
|
||||||
lstat caller that the "drive" is actually pointing
|
|
||||||
somewhere else, thus, it's a symlink in POSIX speak. */
|
|
||||||
if (upath.Length == 14) /* \??\X:\ */
|
if (upath.Length == 14) /* \??\X:\ */
|
||||||
{
|
goto file_not_symlink;
|
||||||
fileattr &= ~FILE_ATTRIBUTE_DIRECTORY;
|
|
||||||
path_flags |= PATH_SYMLINK;
|
|
||||||
}
|
|
||||||
/* For final paths differing in inner path components return
|
/* For final paths differing in inner path components return
|
||||||
length as negative value. This informs path_conv::check
|
length as negative value. This informs path_conv::check
|
||||||
to skip realpath handling on the last path component. */
|
to skip realpath handling on the last path component. */
|
||||||
|
|
Loading…
Reference in New Issue