]> git.eshelyaron.com Git - emacs.git/commitdiff
Fix up deleting auto-save/killing buffer wrt. `auto-save-visited-mode'
authorLars Ingebrigtsen <larsi@gnus.org>
Wed, 25 Aug 2021 09:58:27 +0000 (11:58 +0200)
committerLars Ingebrigtsen <larsi@gnus.org>
Wed, 25 Aug 2021 09:58:27 +0000 (11:58 +0200)
* src/buffer.c (Fkill_buffer): Respect `auto-save-visited-mode'.

src/buffer.c

index 5951040ff2c8e58a8fa02a1b1c442a392d1a1294..100ebc7e2dee07b9d3c3db333d3797a67f7af155 100644 (file)
@@ -1798,11 +1798,15 @@ cleaning up all windows currently displaying the buffer to be killed. */)
 
     /* Delete the autosave file, if requested. */
     if (modified
-       && STRINGP (BVAR (b, auto_save_file_name))
-       && !NILP (Ffile_exists_p (BVAR (b, auto_save_file_name)))
        && kill_buffer_delete_auto_save_files
        && delete_auto_save_files
-       && !NILP (Frecent_auto_save_p ()))
+       && !NILP (Frecent_auto_save_p ())
+       && STRINGP (BVAR (b, auto_save_file_name))
+       && !NILP (Ffile_exists_p (BVAR (b, auto_save_file_name)))
+       /* If `auto-save-visited-mode' is on, then we're auto-saving
+          to the visited file -- don't delete it.. */
+       && NILP (Fstring_equal (BVAR (b, auto_save_file_name),
+                               BVAR (b, filename))))
       {
        tem = do_yes_or_no_p (build_string ("Delete auto-save file? "));
        if (!NILP (tem))