From: Eli Zaretskii Date: Wed, 18 Jan 2017 18:36:14 +0000 (+0200) Subject: Remove lock file when auto-saving into the visited file X-Git-Tag: emacs-26.0.90~870^2~95 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=5304cb983146fe55ea1b4963ffc756ca4325673d;p=emacs.git Remove lock file when auto-saving into the visited file * src/fileio.c (write_region): When auto-saving into the visited file, unlock the file whenever we mark the buffer unmodified. (Bug#25470) --- diff --git a/src/fileio.c b/src/fileio.c index be52d0f3d0e..8c8cba9e49c 100644 --- a/src/fileio.c +++ b/src/fileio.c @@ -5142,19 +5142,26 @@ write_region (Lisp_Object start, Lisp_Object end, Lisp_Object filename, if (! ok) report_file_errno ("Write error", filename, save_errno); + bool auto_saving_into_visited_file = + auto_saving + && ! NILP (Fstring_equal (BVAR (current_buffer, filename), + BVAR (current_buffer, auto_save_file_name))); if (visiting) { SAVE_MODIFF = MODIFF; XSETFASTINT (BVAR (current_buffer, save_length), Z - BEG); bset_filename (current_buffer, visit_file); update_mode_lines = 14; + if (auto_saving_into_visited_file) + unlock_file (lockname); } else if (quietly) { - if (auto_saving - && ! NILP (Fstring_equal (BVAR (current_buffer, filename), - BVAR (current_buffer, auto_save_file_name)))) - SAVE_MODIFF = MODIFF; + if (auto_saving_into_visited_file) + { + SAVE_MODIFF = MODIFF; + unlock_file (lockname); + } return Qnil; }