diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/keyboard.c | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/src/keyboard.c b/src/keyboard.c index 3551a77a9c9..fb4d17ea066 100644 --- a/src/keyboard.c +++ b/src/keyboard.c | |||
| @@ -3135,8 +3135,23 @@ read_char (int commandflag, Lisp_Object map, | |||
| 3135 | /* Change menu-bar to (menu-bar) as the event "position". */ | 3135 | /* Change menu-bar to (menu-bar) as the event "position". */ |
| 3136 | POSN_SET_POSN (xevent_start (c), list1 (posn)); | 3136 | POSN_SET_POSN (xevent_start (c), list1 (posn)); |
| 3137 | 3137 | ||
| 3138 | also_record = c; | 3138 | /* Should a command call `sit-for', or another command that |
| 3139 | Vunread_command_events = Fcons (c, Vunread_command_events); | 3139 | provides a timespec to Fread_event and co., the original |
| 3140 | event will not subsequently be entered into | ||
| 3141 | this_command_keys unless Qno_record be specified below. | ||
| 3142 | |||
| 3143 | The same is the case in a number of other scenarios where | ||
| 3144 | reread is true, but if so, event recording is to be | ||
| 3145 | suppressed anyway. */ | ||
| 3146 | |||
| 3147 | if (end_time) | ||
| 3148 | Vunread_command_events = Fcons (Fcons (Qt, c), | ||
| 3149 | Vunread_command_events); | ||
| 3150 | else | ||
| 3151 | { | ||
| 3152 | also_record = c; | ||
| 3153 | Vunread_command_events = Fcons (c, Vunread_command_events); | ||
| 3154 | } | ||
| 3140 | c = posn; | 3155 | c = posn; |
| 3141 | } | 3156 | } |
| 3142 | } | 3157 | } |