summaryrefslogtreecommitdiff
path: root/src/fileio.c
diff options
context:
space:
mode:
authorRichard M. Stallman <rms@gnu.org>1996-02-27 16:51:25 +0000
committerRichard M. Stallman <rms@gnu.org>1996-02-27 16:51:25 +0000
commitea77859b1c818d969b9d17406894e27e0fcfc494 (patch)
treec47b87aa194cade44af4f8ff3529b15f00b1cf22 /src/fileio.c
parent0877d827d47eb752a2fbe6aba4a88dd90429588c (diff)
downloademacs-ea77859b1c818d969b9d17406894e27e0fcfc494.tar.gz
(Fexpand_file_name): Fix confusion in detecting
that default_directory is already absolute so need not be expanded.
Diffstat (limited to 'src/fileio.c')
-rw-r--r--src/fileio.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/fileio.c b/src/fileio.c
index 5ea29061950..221ef67cd8e 100644
--- a/src/fileio.c
+++ b/src/fileio.c
@@ -795,10 +795,15 @@ See also the function `substitute-in-file-name'.")
The EQ test avoids infinite recursion. */
if (! NILP (default_directory) && !EQ (default_directory, name)
- /* This saves time in a common case. */
+ /* Save time in some common cases. */
+#ifdef DOS_NT
+ /* Detect MSDOS file names with device names. */
&& ! (XSTRING (default_directory)->size >= 3
- && IS_DIRECTORY_SEP (XSTRING (default_directory)->data[0])
- && IS_DEVICE_SEP (XSTRING (default_directory)->data[1])))
+ && IS_DEVICE_SEP (o[1]) && IS_DIRECTORY_SEP (o[2]))
+#endif
+ /* Detect Unix absolute file names. */
+ && ! (XSTRING (default_directory)->size >= 2
+ && IS_DIRECTORY_SEP (o[0])))
{
struct gcpro gcpro1;