+2010-08-31 Corinna Vinschen <corinna@vinschen.de>
+
+ * path.cc (normalize_posix_path): Preserve //./ and //?/ prefixes.
+ (path_conv::check): Allow access to root directory of native NT disk
+ devices.
+
2010-08-31 Corinna Vinschen <corinna@vinschen.de>
* include/cygwin/version.h: Bump DLL minor version number to 7.
{
*tail++ = *src++;
++dst_start;
+ /* Is that a //?/ or //./ prefix into the native NT namespace?
+ If so, preserve it. */
+ if ((src[1] == '.' || src[1] == '?') && isslash (src[2]))
+ {
+ *tail++ = *src++;
+ *tail++ = *src++;
+ dst_start += 2;
+ }
}
while (*src)
full_path[2] = '\\';
full_path[3] = '\0';
}
+ /* Otherwise, if the user requires a directory and explicitely
+ specified a path into the native NT namespace, add the trailing
+ backslash. It's needed to access the root dir. */
+ else if (need_directory
+ && full_path[0] == '\\' && full_path[1] == '\\'
+ && (full_path[2] == '.' || full_path[2] == '?'))
+ strcat (full_path, "\\");
/* If the incoming path was given in DOS notation, always treat
it as caseinsensitive,noacl path. This must be set before