changeset 19695:d28bbba0fcd0

(Fexpand_file_name) [WINDOWSNT]: When stripping drive letter, be careful not to create a UNC filename. (Fadd_name_to_file) [WINDOWSNT]: Remove conditional.
author Geoff Voelker <voelker@cs.washington.edu>
date Wed, 03 Sep 1997 00:30:24 +0000
parents 4a0cf10c12f2
children dc5e4b1ce93c
files src/fileio.c
diffstat 1 files changed, 8 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/src/fileio.c	Wed Sep 03 00:19:25 1997 +0000
+++ b/src/fileio.c	Wed Sep 03 00:30:24 1997 +0000
@@ -917,6 +917,14 @@
 	      goto look_again;
 	}
   }
+
+#ifdef WINDOWSNT
+  /* If we see "c://somedir", we want to strip the first slash after the
+     colon when stripping the drive letter.  Otherwise, this expands to
+     "//somedir".  */
+  if (drive && IS_DIRECTORY_SEP (nm[0]) && IS_DIRECTORY_SEP (nm[1]))
+    nm++;
+#endif /* WINDOWSNT */
 #endif /* DOS_NT */
 
 #ifdef WINDOWSNT
@@ -2357,10 +2365,6 @@
       || INTEGERP (ok_if_already_exists))
     barf_or_query_if_file_exists (newname, "make it a new name",
 				  INTEGERP (ok_if_already_exists), 0);
-#ifdef WINDOWSNT
-  /* Windows does not support this operation.  */
-  report_file_error ("Adding new name", Flist (2, &file));
-#else /* not WINDOWSNT */
 
   unlink (XSTRING (newname)->data);
   if (0 > link (XSTRING (file)->data, XSTRING (newname)->data))
@@ -2373,7 +2377,6 @@
       report_file_error ("Adding new name", Flist (2, &file));
 #endif
     }
-#endif /* not WINDOWSNT */
 
   UNGCPRO;
   return Qnil;