summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/keyboard.c10
-rw-r--r--src/syntax.c2
2 files changed, 11 insertions, 1 deletions
diff --git a/src/keyboard.c b/src/keyboard.c
index 717c0710a5c..653f52732a7 100644
--- a/src/keyboard.c
+++ b/src/keyboard.c
@@ -681,6 +681,14 @@ recursive_edit_1 (void)
specbind (Qinhibit_redisplay, Qnil);
redisplaying_p = 0;
+ /* This variable stores buffers that have changed so that an undo
+ boundary can be added. specbind this so that changes in the
+ recursive edit will not result in undo boundaries in buffers
+ changed before we entered there recursive edit.
+ See Bug #23632.
+ */
+ specbind (Qundo_auto__undoably_changed_buffers, Qnil);
+
val = command_loop ();
if (EQ (val, Qt))
Fsignal (Qquit, Qnil);
@@ -10980,6 +10988,8 @@ syms_of_keyboard (void)
DEFSYM (Qpost_command_hook, "post-command-hook");
DEFSYM (Qundo_auto__add_boundary, "undo-auto--add-boundary");
+ DEFSYM (Qundo_auto__undoably_changed_buffers,
+ "undo-auto--undoably-changed-buffers");
DEFSYM (Qdeferred_action_function, "deferred-action-function");
DEFSYM (Qdelayed_warnings_hook, "delayed-warnings-hook");
diff --git a/src/syntax.c b/src/syntax.c
index 1c1a2f82782..587335acef8 100644
--- a/src/syntax.c
+++ b/src/syntax.c
@@ -3771,7 +3771,7 @@ In both cases, LIMIT bounds the search. */);
Vfind_word_boundary_function_table = Fmake_char_table (Qnil, Qnil);
DEFVAR_BOOL ("comment-end-can-be-escaped", Vcomment_end_can_be_escaped,
- doc: /* Non-nil means an escaped ender inside a comment doesn'tend the comment. */);
+ doc: /* Non-nil means an escaped ender inside a comment doesn't end the comment. */);
Vcomment_end_can_be_escaped = 0;
DEFSYM (Qcomment_end_can_be_escaped, "comment-end-can-be-escaped");
Fmake_variable_buffer_local (Qcomment_end_can_be_escaped);