diff options
| author | Chong Yidong | 2006-08-14 18:32:23 +0000 |
|---|---|---|
| committer | Chong Yidong | 2006-08-14 18:32:23 +0000 |
| commit | 70282fce62e13117947dfb4151e93eeb60251d65 (patch) | |
| tree | ea8e3c7ef19f4950eebc17d3e0e46662433b570a /src/keyboard.c | |
| parent | 82d59cb0cabac3a51a23fe06b59a22bc14fa2000 (diff) | |
| download | emacs-70282fce62e13117947dfb4151e93eeb60251d65.tar.gz emacs-70282fce62e13117947dfb4151e93eeb60251d65.zip | |
* keyboard.c (read_char): Don't reset idle timers if a time limit
is supplied.
Diffstat (limited to 'src/keyboard.c')
| -rw-r--r-- | src/keyboard.c | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/src/keyboard.c b/src/keyboard.c index c715eadeb80..bea35a05731 100644 --- a/src/keyboard.c +++ b/src/keyboard.c | |||
| @@ -2679,7 +2679,14 @@ read_char (commandflag, nmaps, maps, prev_event, used_mouse_menu, end_time) | |||
| 2679 | goto non_reread; | 2679 | goto non_reread; |
| 2680 | } | 2680 | } |
| 2681 | 2681 | ||
| 2682 | timer_start_idle (); | 2682 | /* Start idle timers. If a time limit is supplied, we don't reset |
| 2683 | idle timers. This avoids an infinite recursion in case an idle | ||
| 2684 | timer calls `sit-for'. */ | ||
| 2685 | |||
| 2686 | if (end_time) | ||
| 2687 | timer_resume_idle (); | ||
| 2688 | else | ||
| 2689 | timer_start_idle (); | ||
| 2683 | 2690 | ||
| 2684 | /* If in middle of key sequence and minibuffer not active, | 2691 | /* If in middle of key sequence and minibuffer not active, |
| 2685 | start echoing if enough time elapses. */ | 2692 | start echoing if enough time elapses. */ |
| @@ -2879,7 +2886,10 @@ read_char (commandflag, nmaps, maps, prev_event, used_mouse_menu, end_time) | |||
| 2879 | /* Actually read a character, waiting if necessary. */ | 2886 | /* Actually read a character, waiting if necessary. */ |
| 2880 | save_getcjmp (save_jump); | 2887 | save_getcjmp (save_jump); |
| 2881 | restore_getcjmp (local_getcjmp); | 2888 | restore_getcjmp (local_getcjmp); |
| 2882 | timer_start_idle (); | 2889 | if (end_time) |
| 2890 | timer_resume_idle (); | ||
| 2891 | else | ||
| 2892 | timer_start_idle (); | ||
| 2883 | c = kbd_buffer_get_event (&kb, used_mouse_menu, end_time); | 2893 | c = kbd_buffer_get_event (&kb, used_mouse_menu, end_time); |
| 2884 | restore_getcjmp (save_jump); | 2894 | restore_getcjmp (save_jump); |
| 2885 | 2895 | ||