diff options
Diffstat (limited to 'src/lread.c')
| -rw-r--r-- | src/lread.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/src/lread.c b/src/lread.c index 088f729075d..49a56a0e935 100644 --- a/src/lread.c +++ b/src/lread.c | |||
| @@ -27,6 +27,7 @@ Boston, MA 02110-1301, USA. */ | |||
| 27 | #include <sys/stat.h> | 27 | #include <sys/stat.h> |
| 28 | #include <sys/file.h> | 28 | #include <sys/file.h> |
| 29 | #include <errno.h> | 29 | #include <errno.h> |
| 30 | #include <setjmp.h> | ||
| 30 | #include "lisp.h" | 31 | #include "lisp.h" |
| 31 | #include "intervals.h" | 32 | #include "intervals.h" |
| 32 | #include "buffer.h" | 33 | #include "buffer.h" |
| @@ -34,6 +35,7 @@ Boston, MA 02110-1301, USA. */ | |||
| 34 | #include <epaths.h> | 35 | #include <epaths.h> |
| 35 | #include "commands.h" | 36 | #include "commands.h" |
| 36 | #include "keyboard.h" | 37 | #include "keyboard.h" |
| 38 | #include "frame.h" | ||
| 37 | #include "termhooks.h" | 39 | #include "termhooks.h" |
| 38 | #include "coding.h" | 40 | #include "coding.h" |
| 39 | #include "blockinput.h" | 41 | #include "blockinput.h" |
| @@ -446,8 +448,6 @@ static void substitute_in_interval P_ ((INTERVAL, Lisp_Object)); | |||
| 446 | 448 | ||
| 447 | /* Get a character from the tty. */ | 449 | /* Get a character from the tty. */ |
| 448 | 450 | ||
| 449 | extern Lisp_Object read_char (); | ||
| 450 | |||
| 451 | /* Read input events until we get one that's acceptable for our purposes. | 451 | /* Read input events until we get one that's acceptable for our purposes. |
| 452 | 452 | ||
| 453 | If NO_SWITCH_FRAME is non-zero, switch-frame events are stashed | 453 | If NO_SWITCH_FRAME is non-zero, switch-frame events are stashed |
| @@ -499,10 +499,12 @@ read_filtered_event (no_switch_frame, ascii_required, error_nonascii, | |||
| 499 | EMACS_ADD_TIME (end_time, end_time, wait_time); | 499 | EMACS_ADD_TIME (end_time, end_time, wait_time); |
| 500 | } | 500 | } |
| 501 | 501 | ||
| 502 | /* Read until we get an acceptable event. */ | 502 | /* Read until we get an acceptable event. */ |
| 503 | retry: | 503 | retry: |
| 504 | val = read_char (0, 0, 0, (input_method ? Qnil : Qt), 0, | 504 | do |
| 505 | NUMBERP (seconds) ? &end_time : NULL); | 505 | val = read_char (0, 0, 0, (input_method ? Qnil : Qt), 0, |
| 506 | NUMBERP (seconds) ? &end_time : NULL); | ||
| 507 | while (INTEGERP (val) && XINT (val) == -2); /* wrong_kboard_jmpbuf */ | ||
| 506 | 508 | ||
| 507 | if (BUFFERP (val)) | 509 | if (BUFFERP (val)) |
| 508 | goto retry; | 510 | goto retry; |