aboutsummaryrefslogtreecommitdiffstats
path: root/lisp
diff options
context:
space:
mode:
authorMark Diekhans2011-01-14 21:32:19 -0500
committerChong Yidong2011-01-14 21:32:19 -0500
commitb024d9f02d2758815069b2a0df3af72fcf0ee220 (patch)
treec804be069540cb3f8562a4d50c07ce6e0e8d7e6d /lisp
parent66399c0a66e87c20edad6a7eb2474981d9bc7e4e (diff)
downloademacs-b024d9f02d2758815069b2a0df3af72fcf0ee220.tar.gz
emacs-b024d9f02d2758815069b2a0df3af72fcf0ee220.zip
Make last-resort backup file in .emacs.d (Bug#6953).
* lisp/files.el (backup-buffer): Make last-resort backup file in .emacs.d. * lisp/subr.el (locate-user-emacs-file): If .emacs.d does not exist, make it with permission 700. * doc/emacs/files.texi (Backup Names): Document the new location of the last-resort backup file.
Diffstat (limited to 'lisp')
-rw-r--r--lisp/ChangeLog8
-rw-r--r--lisp/files.el7
-rw-r--r--lisp/subr.el11
3 files changed, 19 insertions, 7 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 0f6138bf698..0ff810a1230 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,11 @@
12011-01-15 Mark Diekhans <markd@soe.ucsc.edu>
2
3 * files.el (backup-buffer): Make last-resort backup file in
4 .emacs.d (Bug#6953).
5
6 * subr.el (locate-user-emacs-file): If .emacs.d does not exist,
7 make it with permission 700.
8
12011-01-14 Kenichi Handa <handa@m17n.org> 92011-01-14 Kenichi Handa <handa@m17n.org>
2 10
3 * mail/rmailmm.el (rmail-mime-insert-header): Set 11 * mail/rmailmm.el (rmail-mime-insert-header): Set
diff --git a/lisp/files.el b/lisp/files.el
index ab027b507f6..92029b470ff 100644
--- a/lisp/files.el
+++ b/lisp/files.el
@@ -3683,10 +3683,9 @@ BACKUPNAME is the backup file name, which is the old file renamed."
3683 (rename-file real-file-name backupname t) 3683 (rename-file real-file-name backupname t)
3684 (setq setmodes (cons modes backupname))) 3684 (setq setmodes (cons modes backupname)))
3685 (file-error 3685 (file-error
3686 ;; If trouble writing the backup, write it in ~. 3686 ;; If trouble writing the backup, write it in
3687 (setq backupname (expand-file-name 3687 ;; .emacs.d/%backup%.
3688 (convert-standard-filename 3688 (setq backupname (locate-user-emacs-file "%backup%~"))
3689 "~/%backup%~")))
3690 (message "Cannot write backup file; backing up in %s" 3689 (message "Cannot write backup file; backing up in %s"
3691 backupname) 3690 backupname)
3692 (sleep-for 1) 3691 (sleep-for 1)
diff --git a/lisp/subr.el b/lisp/subr.el
index 7ddabbc0e90..2a0dee69338 100644
--- a/lisp/subr.el
+++ b/lisp/subr.el
@@ -2340,11 +2340,16 @@ directory if it does not exist."
2340 ;; unless we're in batch mode or dumping Emacs 2340 ;; unless we're in batch mode or dumping Emacs
2341 (or noninteractive 2341 (or noninteractive
2342 purify-flag 2342 purify-flag
2343 (file-accessible-directory-p (directory-file-name user-emacs-directory)) 2343 (file-accessible-directory-p
2344 (make-directory user-emacs-directory)) 2344 (directory-file-name user-emacs-directory))
2345 (let ((umask (default-file-modes)))
2346 (unwind-protect
2347 (progn
2348 (set-default-file-modes ?\700)
2349 (make-directory user-emacs-directory))
2350 (set-default-file-modes umask))))
2345 (abbreviate-file-name 2351 (abbreviate-file-name
2346 (expand-file-name new-name user-emacs-directory)))))) 2352 (expand-file-name new-name user-emacs-directory))))))
2347
2348 2353
2349;;;; Misc. useful functions. 2354;;;; Misc. useful functions.
2350 2355