aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStefan Monnier2013-02-25 09:29:41 -0500
committerStefan Monnier2013-02-25 09:29:41 -0500
commit944c37effa068de90af84c37106461bca3076bea (patch)
treef1f1d775171addda0ebdb1b21076c67ff1aa69bc
parentce9ae7ca92bf6836d69644e34b98d52b3316da67 (diff)
downloademacs-944c37effa068de90af84c37106461bca3076bea.tar.gz
emacs-944c37effa068de90af84c37106461bca3076bea.zip
* lisp/files.el (basic-save-buffer): Remove redundant directory-creation.
-rw-r--r--lisp/ChangeLog4
-rw-r--r--lisp/files.el39
2 files changed, 18 insertions, 25 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index d596d4f6fb1..07c3df9e279 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,7 @@
12013-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
2
3 * files.el (basic-save-buffer): Remove redundant directory-creation.
4
12013-02-24 Jay Belanger <jay.p.belanger@gmail.com> 52013-02-24 Jay Belanger <jay.p.belanger@gmail.com>
2 6
3 * calc/calc-ext.el (math-to-radians-2, math-from-radians-2): 7 * calc/calc-ext.el (math-to-radians-2, math-from-radians-2):
diff --git a/lisp/files.el b/lisp/files.el
index f9d02511839..cbc6e59c442 100644
--- a/lisp/files.el
+++ b/lisp/files.el
@@ -4563,32 +4563,21 @@ Before and after saving the buffer, this function runs
4563 (not (file-exists-p buffer-file-name)))) 4563 (not (file-exists-p buffer-file-name))))
4564 (let ((recent-save (recent-auto-save-p)) 4564 (let ((recent-save (recent-auto-save-p))
4565 setmodes) 4565 setmodes)
4566 ;; If buffer has no file name, ask user for one. 4566 ;; If buffer has no file name, ask user for one.
4567 (or buffer-file-name 4567 (or buffer-file-name
4568 (let ((filename 4568 (let ((filename
4569 (expand-file-name 4569 (expand-file-name
4570 (read-file-name "File to save in: " 4570 (read-file-name "File to save in: "
4571 nil (expand-file-name (buffer-name)))))) 4571 nil (expand-file-name (buffer-name))))))
4572 (if (file-exists-p filename) 4572 (if (file-exists-p filename)
4573 (if (file-directory-p filename) 4573 (if (file-directory-p filename)
4574 ;; Signal an error if the user specified the name of an 4574 ;; Signal an error if the user specified the name of an
4575 ;; existing directory. 4575 ;; existing directory.
4576 (error "%s is a directory" filename) 4576 (error "%s is a directory" filename)
4577 (unless (y-or-n-p (format "File `%s' exists; overwrite? " 4577 (unless (y-or-n-p (format "File `%s' exists; overwrite? "
4578 filename)) 4578 filename))
4579 (error "Canceled"))) 4579 (error "Canceled"))))
4580 ;; Signal an error if the specified name refers to a 4580 (set-visited-file-name filename)))
4581 ;; non-existing directory.
4582 (let ((dir (file-name-directory filename)))
4583 (unless (file-directory-p dir)
4584 (if (file-exists-p dir)
4585 (error "%s is not a directory" dir)
4586 (if (y-or-n-p
4587 (format "Directory `%s' does not exist; create? "
4588 dir))
4589 (make-directory dir t)
4590 (error "Canceled"))))))
4591 (set-visited-file-name filename)))
4592 (or (verify-visited-file-modtime (current-buffer)) 4581 (or (verify-visited-file-modtime (current-buffer))
4593 (not (file-exists-p buffer-file-name)) 4582 (not (file-exists-p buffer-file-name))
4594 (yes-or-no-p 4583 (yes-or-no-p