public inbox for cygwin@cygwin.com
 help / color / mirror / Atom feed
* (no subject)
@ 2021-05-18 20:00 Jeremy Drake
  0 siblings, 0 replies; only message in thread
From: Jeremy Drake @ 2021-05-18 20:00 UTC (permalink / raw)
  To: cygwin

> Sorry, but there's only this or that, not both.  Either we revert the
> entire change, including the native shortcut stuff, or we do it
> completely and fully, including handling virtual drives as symlinks.

I had success with just the following change (of course comments would
also need to be updated):

diff --git a/winsup/cygwin/path.cc b/winsup/cygwin/path.cc
index 4ebaf4dc6..53534b8b6 100644
--- a/winsup/cygwin/path.cc
+++ b/winsup/cygwin/path.cc
@@ -3670,8 +3670,7 @@ restart:
 		   somewhere else, thus, it's a symlink in POSIX speak. */
 		if (upath.Length == 14)	/* \??\X:\ */
 		  {
-		    fileattr &= ~FILE_ATTRIBUTE_DIRECTORY;
-		    path_flags |= PATH_SYMLINK;
+		    goto file_not_symlink;
 		  }
 		/* For final paths differing in inner path components return
 		   length as negative value.  This informs path_conv::check

Treating mapped/subst drives as though they were not symlinks, without
messing with intermedate symlinks.

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2021-05-18 20:00 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-05-18 20:00 Jeremy Drake

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).