]> code.delx.au - gnu-emacs/commitdiff
Don't mirror slashes in convert-standard-filename on MS-Windows
authorEli Zaretskii <eliz@gnu.org>
Mon, 25 Apr 2016 08:50:37 +0000 (11:50 +0300)
committerEli Zaretskii <eliz@gnu.org>
Mon, 25 Apr 2016 08:50:37 +0000 (11:50 +0300)
* lisp/w32-fns.el (w32-convert-standard-filename): Don't mirror
slashes into backslashes.  This avoids producing ugly file names,
and is deemed no longer necessary, and should certainly be
unrelated to which shell is in use.

etc/NEWS
lisp/w32-fns.el

index f964e71f8b6609e9b42f6bc6ad604c1d37e43fa4..eff5472e1bdb019d38e29c7cbfec3e25c138dc01 100644 (file)
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -418,6 +418,10 @@ Windows NT and later you can now register any hotkey combination.  (On
 Windows 9X, the previous limitations, spelled out in the Emacs manual,
 still apply.)
 
+** `convert-standard-filename' no longer mirrors slashes on MS-Windows.
+Previously, on MS-Windows this function converted slash characters in
+file names into backslashes.  It no longer does that.
+
 \f
 * Installation Changes in Emacs 25.1
 
index 472355741b815ac1e640116592e77869ea1a046a..690a99020878aa3eaf61f1dd3f8a6091f005c507 100644 (file)
@@ -200,8 +200,7 @@ certain patterns.
 This function is called by `convert-standard-filename'.
 
 Replace invalid characters and turn Cygwin names into native
-names, and also turn slashes into backslashes if the shell
-requires it (see `w32-shell-dos-semantics')."
+names."
   (save-match-data
     (let ((name
           (if (string-match "\\`/cygdrive/\\([a-zA-Z]\\)/" filename)
@@ -216,13 +215,6 @@ requires it (see `w32-shell-dos-semantics')."
       (while (string-match "[?*:<>|\"\000-\037]" name start)
        (aset name (match-beginning 0) ?!)
        (setq start (match-end 0)))
-      ;; convert directory separators to Windows format
-      ;; (but only if the shell in use requires it)
-      (when (w32-shell-dos-semantics)
-       (setq start 0)
-       (while (string-match "/" name start)
-         (aset name (match-beginning 0) ?\\)
-         (setq start (match-end 0))))
       name)))
 
 (defun set-w32-system-coding-system (coding-system)