changeset 104857:ea5c49fab49a

* lisp/files.el (find-alternate-file): If the old buffer is modified and visiting a file, behave similarly to `kill-buffer' when killing it, thus reverting to the pre-1.878 behavior; see http://lists.gnu.org/archive/html/emacs-devel/2009-09/msg00101.html for discussion. Also, consult `buffer-file-name' as a variable not as a function, for consistency with the rest of the code.
author Karl Fogel <kfogel@red-bean.com>
date Sat, 05 Sep 2009 15:16:49 +0000
parents 2c670d6d9528
children 53d8d2c49942
files lisp/ChangeLog lisp/files.el
diffstat 2 files changed, 15 insertions(+), 6 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/ChangeLog	Sat Sep 05 06:03:01 2009 +0000
+++ b/lisp/ChangeLog	Sat Sep 05 15:16:49 2009 +0000
@@ -1,3 +1,12 @@
+2009-09-05  Karl Fogel  <kfogel@red-bean.com>
+
+	* files.el (find-alternate-file): If the old buffer is modified
+	and visiting a file, behave similarly to `kill-buffer' when
+	killing it, thus reverting to the pre-1.878 behavior; see
+	http://lists.gnu.org/archive/html/emacs-devel/2009-09/msg00101.html
+	for discussion.  Also, consult `buffer-file-name' as a variable
+	not as a function, for consistency with the rest of the code.
+
 2009-09-04  Michael Albinus  <michael.albinus@gmx.de>
 
 	* net/tramp.el (tramp-handle-insert-directory): Handle "--dired"
--- a/lisp/files.el	Sat Sep 05 06:03:01 2009 +0000
+++ b/lisp/files.el	Sat Sep 05 15:16:49 2009 +0000
@@ -1481,12 +1481,12 @@
 	   t)))
   (unless (run-hook-with-args-until-failure 'kill-buffer-query-functions)
     (error "Aborted"))
-  (when (and (buffer-modified-p) (buffer-file-name))
-    (if (yes-or-no-p (format "Buffer %s is modified; kill anyway? "
-			     (buffer-name)))
-	(unless (yes-or-no-p "Kill and replace the buffer without saving it? ")
-	  (error "Aborted"))
-      (save-buffer)))
+  (when (and (buffer-modified-p) buffer-file-name)
+    (if (yes-or-no-p (format "Buffer %s is modified; save it first? "
+                             (buffer-name)))
+        (save-buffer)
+      (unless (yes-or-no-p "Kill and replace the buffer without saving it? ")
+        (error "Aborted"))))
   (let ((obuf (current-buffer))
 	(ofile buffer-file-name)
 	(onum buffer-file-number)