diff options
author | Richard M. Stallman <rms@gnu.org> | 1995-05-03 20:27:05 +0000 |
---|---|---|
committer | Richard M. Stallman <rms@gnu.org> | 1995-05-03 20:27:05 +0000 |
commit | c7f1b3c8eca0e3a040eb236e148565d0662804de (patch) | |
tree | 1b12809fa0fd1be5da6c7e709ae78b0392c698b9 /src/fileio.c | |
parent | 1b8182118a78d9fe03b2859727e453be912d5da9 (diff) | |
download | emacs-c7f1b3c8eca0e3a040eb236e148565d0662804de.tar.gz |
(directory_file_name): Add APOLLO conditional.
(Fcopy_file, Fset_file_modes): Delete APOLLO conditionals.
Diffstat (limited to 'src/fileio.c')
-rw-r--r-- | src/fileio.c | 38 |
1 files changed, 7 insertions, 31 deletions
diff --git a/src/fileio.c b/src/fileio.c index 3c4ed563fb0..9222f8442a0 100644 --- a/src/fileio.c +++ b/src/fileio.c @@ -650,10 +650,17 @@ directory_file_name (src, dst) /* Process as Unix format: just remove any final slash. But leave "/" unchanged; do not change it to "". */ strcpy (dst, src); +#ifdef APOLLO + /* Handle // as root for apollo's. */ + if ((slen > 2 && dst[slen - 1] == '/') + || (slen > 1 && dst[0] != '/' && dst[slen - 1] == '/')) + dst[slen - 1] = 0; +#else if (slen > 1 && IS_DIRECTORY_SEP (dst[slen - 1]) && !IS_ANY_SEP (dst[slen - 2])) dst[slen - 1] = 0; +#endif return 1; } @@ -1900,9 +1907,6 @@ A prefix arg makes KEEP-TIME non-nil.") if (set_file_times (XSTRING (newname)->data, atime, mtime)) report_file_error ("I/O error", Fcons (newname, Qnil)); } -#ifdef APOLLO - if (!egetenv ("USE_DOMAIN_ACLS")) -#endif chmod (XSTRING (newname)->data, st.st_mode & 07777); } @@ -2591,36 +2595,8 @@ Only the 12 low bits of MODE are used.") if (!NILP (handler)) return call3 (handler, Qset_file_modes, abspath, mode); -#ifndef APOLLO if (chmod (XSTRING (abspath)->data, XINT (mode)) < 0) report_file_error ("Doing chmod", Fcons (abspath, Qnil)); -#else /* APOLLO */ - if (!egetenv ("USE_DOMAIN_ACLS")) - { - struct stat st; - struct timeval tvp[2]; - - /* chmod on apollo also change the file's modtime; need to save the - modtime and then restore it. */ - if (stat (XSTRING (abspath)->data, &st) < 0) - { - report_file_error ("Doing chmod", Fcons (abspath, Qnil)); - return (Qnil); - } - - if (chmod (XSTRING (abspath)->data, XINT (mode)) < 0) - report_file_error ("Doing chmod", Fcons (abspath, Qnil)); - - /* reset the old accessed and modified times. */ - tvp[0].tv_sec = st.st_atime + 1; /* +1 due to an Apollo roundoff bug */ - tvp[0].tv_usec = 0; - tvp[1].tv_sec = st.st_mtime + 1; /* +1 due to an Apollo roundoff bug */ - tvp[1].tv_usec = 0; - - if (utimes (XSTRING (abspath)->data, tvp) < 0) - report_file_error ("Doing utimes", Fcons (abspath, Qnil)); - } -#endif /* APOLLO */ return Qnil; } |