summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorEli Zaretskii <eliz@gnu.org>2020-11-07 12:29:41 +0200
committerEli Zaretskii <eliz@gnu.org>2020-11-14 15:24:15 +0200
commite2c7b6372d220d09f5d1bf80aa353979a546c57c (patch)
tree92d29af4037f3c65c6fd1a51f2521d845c88a211 /src
parent19da602991538e03648a82214cbb1bcc9a6ec14a (diff)
downloademacs-e2c7b6372d220d09f5d1bf80aa353979a546c57c.tar.gz
Don't leave lock files after 'replace-buffer-contents'
* src/editfns.c (Freplace_buffer_contents): Unlock the buffer's file if no changes have been made. (Bug#44303) (cherry picked from commit a5867ddfbd721568005175bf6c725f7834b21ea4)
Diffstat (limited to 'src')
-rw-r--r--src/editfns.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/editfns.c b/src/editfns.c
index f660513b2a4..fb420dac7fa 100644
--- a/src/editfns.c
+++ b/src/editfns.c
@@ -2145,6 +2145,13 @@ nil. */)
{
signal_after_change (BEGV, size_a, ZV - BEGV);
update_compositions (BEGV, ZV, CHECK_INSIDE);
+ /* We've locked the buffer's file above in
+ prepare_to_modify_buffer; if the buffer is unchanged at this
+ point, i.e. no insertions or deletions have been made, unlock
+ the file now. */
+ if (SAVE_MODIFF == MODIFF
+ && STRINGP (BVAR (a, file_truename)))
+ unlock_file (BVAR (a, file_truename));
}
return Qt;