(menu_item_enabled_p_1): Special handling for quit.

(set_frame_menubar): Inhibit quitting.
This commit is contained in:
Richard M. Stallman 1995-06-22 19:25:20 +00:00
parent 30c7e3b3fe
commit 37a985474f

View file

@ -435,6 +435,11 @@ static Lisp_Object
menu_item_enabled_p_1 (arg)
Lisp_Object arg;
{
/* If we got a quit from within the menu computation,
quit all the way out of it. This takes care of C-] in the debugger. */
if (CONSP (arg) && EQ (XCONS (arg)->car, Qquit))
Fsignal (Qquit, Qnil);
return Qnil;
}
@ -1495,9 +1500,12 @@ set_frame_menubar (f, first_time)
int i;
int id;
int count;
int specpdl_count = specpdl_ptr - specpdl;
count = inhibit_garbage_collection ();
specbind (Qinhibit_quit, Qt);
id = frame_vector_add_frame (f);
wv = malloc_widget_value ();
@ -1599,6 +1607,8 @@ set_frame_menubar (f, first_time)
update_frame_menubar (f);
unbind_to (specpdl_count, Qnil);
UNBLOCK_INPUT;
}