diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 5 | ||||
| -rw-r--r-- | src/keyboard.c | 14 |
2 files changed, 13 insertions, 6 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index aa025125067..28109540800 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,8 @@ | |||
| 1 | 2006-08-05 Eli Zaretskii <eliz@gnu.org> | ||
| 2 | |||
| 3 | * keyboard.c (kbd_buffer_get_event): Return Qnil when current time | ||
| 4 | is exactly equal to end_time, not only when it is past that. | ||
| 5 | |||
| 1 | 2006-08-04 Chong Yidong <cyd@stupidchicken.com> | 6 | 2006-08-04 Chong Yidong <cyd@stupidchicken.com> |
| 2 | 7 | ||
| 3 | * keyboard.c (read_char): Rebalance specpdl after receiving jump. | 8 | * keyboard.c (read_char): Rebalance specpdl after receiving jump. |
diff --git a/src/keyboard.c b/src/keyboard.c index a4e1c98c013..6f12994a1b8 100644 --- a/src/keyboard.c +++ b/src/keyboard.c | |||
| @@ -3954,13 +3954,15 @@ kbd_buffer_get_event (kbp, used_mouse_menu, end_time) | |||
| 3954 | { | 3954 | { |
| 3955 | EMACS_TIME duration; | 3955 | EMACS_TIME duration; |
| 3956 | EMACS_GET_TIME (duration); | 3956 | EMACS_GET_TIME (duration); |
| 3957 | EMACS_SUB_TIME (duration, *end_time, duration); | 3957 | if (EMACS_TIME_GE (duration, *end_time)) |
| 3958 | if (EMACS_TIME_NEG_P (duration)) | 3958 | return Qnil; /* finished waiting */ |
| 3959 | return Qnil; | ||
| 3960 | else | 3959 | else |
| 3961 | wait_reading_process_output (EMACS_SECS (duration), | 3960 | { |
| 3962 | EMACS_USECS (duration), | 3961 | EMACS_SUB_TIME (duration, *end_time, duration); |
| 3963 | -1, 1, Qnil, NULL, 0); | 3962 | wait_reading_process_output (EMACS_SECS (duration), |
| 3963 | EMACS_USECS (duration), | ||
| 3964 | -1, 1, Qnil, NULL, 0); | ||
| 3965 | } | ||
| 3964 | } | 3966 | } |
| 3965 | else | 3967 | else |
| 3966 | wait_reading_process_output (0, 0, -1, 1, Qnil, NULL, 0); | 3968 | wait_reading_process_output (0, 0, -1, 1, Qnil, NULL, 0); |