1350 |
cancel_hourglass (); |
cancel_hourglass (); |
1351 |
#endif |
#endif |
1352 |
|
|
1353 |
|
/* Unblock input if we enter with input blocked. This may happen if |
1354 |
|
redisplay traps e.g. during tool-bar update with input blocked. */ |
1355 |
|
while (INPUT_BLOCKED_P) |
1356 |
|
UNBLOCK_INPUT; |
1357 |
|
|
1358 |
return Fthrow (Qtop_level, Qnil); |
return Fthrow (Qtop_level, Qnil); |
1359 |
} |
} |
1360 |
|
|
9716 |
Lisp_Object saved_keys, saved_last_point_position_buffer; |
Lisp_Object saved_keys, saved_last_point_position_buffer; |
9717 |
Lisp_Object bindings, value; |
Lisp_Object bindings, value; |
9718 |
struct gcpro gcpro1, gcpro2, gcpro3; |
struct gcpro gcpro1, gcpro2, gcpro3; |
9719 |
|
#ifdef HAVE_X_WINDOWS |
9720 |
|
/* The call to Fcompleting_read wil start and cancel the hourglass, |
9721 |
|
but if the hourglass was already scheduled, this means that no |
9722 |
|
hourglass will be shown for the actual M-x command itself. |
9723 |
|
So we restart it if it is already scheduled. Note that checking |
9724 |
|
hourglass_shown_p is not enough, normally the hourglass is not shown, |
9725 |
|
just scheduled to be shown. */ |
9726 |
|
int hstarted = hourglass_started (); |
9727 |
|
#endif |
9728 |
|
|
9729 |
saved_keys = Fvector (this_command_key_count, |
saved_keys = Fvector (this_command_key_count, |
9730 |
XVECTOR (this_command_keys)->contents); |
XVECTOR (this_command_keys)->contents); |
9756 |
Qt, Qnil, Qextended_command_history, Qnil, |
Qt, Qnil, Qextended_command_history, Qnil, |
9757 |
Qnil); |
Qnil); |
9758 |
|
|
9759 |
|
#ifdef HAVE_X_WINDOWS |
9760 |
|
if (hstarted) start_hourglass (); |
9761 |
|
#endif |
9762 |
|
|
9763 |
if (STRINGP (function) && SCHARS (function) == 0) |
if (STRINGP (function) && SCHARS (function) == 0) |
9764 |
error ("No command name given"); |
error ("No command name given"); |
9765 |
|
|