diff options
author | Eli Zaretskii <eliz@gnu.org> | 2020-11-07 12:29:41 +0200 |
---|---|---|
committer | Eli Zaretskii <eliz@gnu.org> | 2020-11-14 15:24:15 +0200 |
commit | e2c7b6372d220d09f5d1bf80aa353979a546c57c (patch) | |
tree | 92d29af4037f3c65c6fd1a51f2521d845c88a211 /src | |
parent | 19da602991538e03648a82214cbb1bcc9a6ec14a (diff) | |
download | emacs-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.c | 7 |
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; |