diff options
| author | Stefan Monnier <monnier@iro.umontreal.ca> | 2017-12-28 14:03:07 -0500 |
|---|---|---|
| committer | Stefan Monnier <monnier@iro.umontreal.ca> | 2017-12-28 14:03:07 -0500 |
| commit | e879a5444a86e8fc030bbef69fbb8d84e9961fa3 (patch) | |
| tree | 53aa45c1f9945499941715085537337f78f325f4 /src | |
| parent | 81b1028b63b7d56a9483606fc7c656dd5cee28af (diff) | |
* src/buffer.c (Frestore_buffer_modified_p): Fix bug#29846
Don't mess with the lock file when inhibit_modification_hooks is set,
just like we do in prepare_to_modify_buffer_1.
Diffstat (limited to 'src')
| -rw-r--r-- | src/buffer.c | 20 |
1 files changed, 11 insertions, 9 deletions
diff --git a/src/buffer.c b/src/buffer.c index bcde2c80989..7ed21f0e327 100644 --- a/src/buffer.c +++ b/src/buffer.c @@ -1354,7 +1354,6 @@ It is not ensured that mode lines will be updated to show the modified state of the current buffer. Use with care. */) (Lisp_Object flag) { - Lisp_Object fn; /* If buffer becoming modified, lock the file. If buffer becoming unmodified, unlock the file. */ @@ -1363,15 +1362,18 @@ state of the current buffer. Use with care. */) ? current_buffer->base_buffer : current_buffer; - fn = BVAR (b, file_truename); - /* Test buffer-file-name so that binding it to nil is effective. */ - if (!NILP (fn) && ! NILP (BVAR (b, filename))) + if (!inhibit_modification_hooks) { - bool already = SAVE_MODIFF < MODIFF; - if (!already && !NILP (flag)) - lock_file (fn); - else if (already && NILP (flag)) - unlock_file (fn); + Lisp_Object fn = BVAR (b, file_truename); + /* Test buffer-file-name so that binding it to nil is effective. */ + if (!NILP (fn) && ! NILP (BVAR (b, filename))) + { + bool already = SAVE_MODIFF < MODIFF; + if (!already && !NILP (flag)) + lock_file (fn); + else if (already && NILP (flag)) + unlock_file (fn); + } } /* Here we have a problem. SAVE_MODIFF is used here to encode |
