31 |
;; This overrides a trivial definition in files.el. |
;; This overrides a trivial definition in files.el. |
32 |
(defun convert-standard-filename (filename) |
(defun convert-standard-filename (filename) |
33 |
"Convert a standard file's name to something suitable for the current OS. |
"Convert a standard file's name to something suitable for the current OS. |
34 |
This function's standard definition is trivial; it just returns the argument. |
This means to guarantee valid names and perhaps to canonicalize |
35 |
However, on some systems, the function is redefined |
certain patterns. |
36 |
with a definition that really does change some file names." |
|
37 |
|
On Windows and DOS, replace invalid characters. On DOS, make |
38 |
|
sure to obey the 8.3 limitations. On Windows, turn Cygwin names |
39 |
|
into native names, and also turn slashes into backslashes if the |
40 |
|
shell requires it (see `w32-shell-dos-semantics')." |
41 |
(if (or (not (stringp filename)) |
(if (or (not (stringp filename)) |
42 |
;; This catches the case where FILENAME is "x:" or "x:/" or |
;; This catches the case where FILENAME is "x:" or "x:/" or |
43 |
;; "/", thus preventing infinite recursion. |
;; "/", thus preventing infinite recursion. |