From: Gerd Moellmann Date: Tue, 9 Jan 2001 13:44:36 +0000 (+0000) Subject: (Fexecute_extended_command): Use a X-Git-Tag: emacs-pretest-21.0.95~21 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=c970a76059aba98b8ac3e5a6fb7e93ce45a6a329;p=emacs.git (Fexecute_extended_command): Use a record_unwind_protect to ensure that pop_message is called. --- diff --git a/src/keyboard.c b/src/keyboard.c index bc991d713f6..105131eedb8 100644 --- a/src/keyboard.c +++ b/src/keyboard.c @@ -9070,6 +9070,8 @@ a special event, so ignore the prefix argument and don't clear it.") } return Qnil; } + + DEFUN ("execute-extended-command", Fexecute_extended_command, Sexecute_extended_command, 1, 1, "P", @@ -9192,7 +9194,9 @@ DEFUN ("execute-extended-command", Fexecute_extended_command, Sexecute_extended_ Lisp_Object binding; char *newmessage; int message_p = push_message (); + int count = BINDING_STACK_SIZE (); + record_unwind_protect (push_message_unwind, Qnil); binding = Fkey_description (bindings); newmessage @@ -9211,7 +9215,7 @@ DEFUN ("execute-extended-command", Fexecute_extended_command, Sexecute_extended_ && message_p) restore_message (); - pop_message (); + unbind_to (count, Qnil); } }