2007-07-07 Christopher Faylor <me+cygwin@cgf.cx>
+ * path.cc (symlink_info::check_shortcut): Handle device "symlinks"
+ specially - don't posixify them.
+
+2007-07-07 Christopher Faylor <me+cygwin@cgf.cx>
+
* fhandler_disk_file.cc: White space.
* fhandler_proc.cc: Ditto.
* fhandler_virtual.cc: Ditto.
goto file_not_symlink;
cp += 2;
cp[len] = '\0';
- res = posixify (cp);
+ /* Check if this is a device file - these start with the sequence :\\ */
+ if (strncmp (cp, ":\\", 2) == 0)
+ res = strlen (strcpy (contents, cp)); /* Don't try to mess with device files */
+ else
+ res = posixify (cp);
if (res) /* It's a symlink. */
pflags = PATH_SYMLINK | PATH_LNK;
goto close_it;
privilege enabled. The reason is apparently that
SetCurrentDirectory calls NtOpenFile without the
FILE_OPEN_FOR_BACKUP_INTENT flag set.
-
+
- Unlinking a cwd fails because SetCurrentDirectory seems to
open directories so that deleting the directory is disallowed.
The below code opens with *all* sharing flags set. */