diff options
author | Paul Eggert <eggert@cs.ucla.edu> | 2011-09-03 16:03:38 -0700 |
---|---|---|
committer | Paul Eggert <eggert@cs.ucla.edu> | 2011-09-03 16:03:38 -0700 |
commit | b49e353d9d01adbe60bc5d0b1658b4ef978b0b06 (patch) | |
tree | 9f2ffa6f7a6562abf661a4951012b488ad8b1ae7 /src/fileio.c | |
parent | 74b880cbc18bd0194c7b1fc44c4a983ee05adae2 (diff) | |
parent | bc3200871917d5c54c8c4299a06bf8f8ba2ea02d (diff) | |
download | emacs-b49e353d9d01adbe60bc5d0b1658b4ef978b0b06.tar.gz |
Merge from trunk.
Diffstat (limited to 'src/fileio.c')
-rw-r--r-- | src/fileio.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/fileio.c b/src/fileio.c index 61713689351..60ee35bb399 100644 --- a/src/fileio.c +++ b/src/fileio.c @@ -2912,7 +2912,7 @@ symbolic notation, like the `chmod' command from GNU Coreutils. */) encoded_absname = ENCODE_FILE (absname); - if (chmod (SSDATA (encoded_absname), XINT (mode)) < 0) + if (chmod (SSDATA (encoded_absname), XINT (mode) & 07777) < 0) report_file_error ("Doing chmod", Fcons (absname, Qnil)); return Qnil; @@ -5114,11 +5114,11 @@ auto_save_1 (void) { if (stat (SSDATA (BVAR (current_buffer, filename)), &st) >= 0) /* But make sure we can overwrite it later! */ - auto_save_mode_bits = st.st_mode | 0600; + auto_save_mode_bits = (st.st_mode | 0600) & 0777; else if ((modes = Ffile_modes (BVAR (current_buffer, filename)), INTEGERP (modes))) /* Remote files don't cooperate with stat. */ - auto_save_mode_bits = XINT (modes) | 0600; + auto_save_mode_bits = (XINT (modes) | 0600) & 0777; } return |