From: Richard M. Stallman Date: Mon, 29 Apr 1996 15:49:43 +0000 (+0000) Subject: (Fexpand_file_name) [DOS_NT]: Keep dir sep following ~ X-Git-Tag: emacs-19.34~752 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=9a1dc3be437a1d9aa0fa9ebc7c7c0bf8be0031a5;p=emacs.git (Fexpand_file_name) [DOS_NT]: Keep dir sep following ~ or ~user, but don't collapse the newdir prefix in that case. --- diff --git a/src/fileio.c b/src/fileio.c index d01b70c7af7..1065a5aa113 100644 --- a/src/fileio.c +++ b/src/fileio.c @@ -786,6 +786,7 @@ See also the function `substitute-in-file-name'.") #endif /* VMS */ #ifdef DOS_NT int drive = 0; + int collapse_newdir = 1; #endif /* DOS_NT */ int length; Lisp_Object handler; @@ -1100,9 +1101,7 @@ See also the function `substitute-in-file-name'.") newdir = (unsigned char *) ""; nm++; #ifdef DOS_NT - if (IS_DIRECTORY_SEP (nm[0])) - /* Make nm look like a relative file name. */ - nm++; + collapse_newdir = 0; #endif #ifdef VMS nm++; /* Don't leave the slash in nm. */ @@ -1128,9 +1127,7 @@ See also the function `substitute-in-file-name'.") #else nm = p; #ifdef DOS_NT - if (IS_DIRECTORY_SEP (nm[0])) - /* Make nm look like a relative name. */ - nm++; + collapse_newdir = 0; #endif #endif /* VMS */ } @@ -1234,7 +1231,7 @@ See also the function `substitute-in-file-name'.") /* Keep only a prefix from newdir if nm starts with slash (//server/share for UNC, nothing otherwise). */ - if (IS_DIRECTORY_SEP (nm[0])) + if (IS_DIRECTORY_SEP (nm[0]) && collapse_newdir) { #ifdef WINDOWSNT if (IS_DIRECTORY_SEP (newdir[0]) && IS_DIRECTORY_SEP (newdir[1]))