summaryrefslogtreecommitdiff
path: root/src/atimer.c
diff options
context:
space:
mode:
authorChong Yidong <cyd@stupidchicken.com>2009-01-29 14:33:14 +0000
committerChong Yidong <cyd@stupidchicken.com>2009-01-29 14:33:14 +0000
commit325530dec76c10dfa64f3a9e5ddc521906609059 (patch)
tree7b8f34be3ba70cfbd759316fa047875da31bab9c /src/atimer.c
parent55310b94ebec5a1614ea52454e088d50580a175b (diff)
downloademacs-325530dec76c10dfa64f3a9e5ddc521906609059.tar.gz
(run_timers, alarm_signal_handler): Update pending_signals.
Diffstat (limited to 'src/atimer.c')
-rw-r--r--src/atimer.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/atimer.c b/src/atimer.c
index a44a2d70731..6767ee59c0e 100644
--- a/src/atimer.c
+++ b/src/atimer.c
@@ -384,8 +384,13 @@ run_timers ()
EMACS_GET_TIME (now);
}
- if (! pending_atimers)
- set_alarm ();
+ if (pending_atimers)
+ pending_signals = 1;
+ else
+ {
+ pending_signals = interrupt_input_pending;
+ set_alarm ();
+ }
}
@@ -397,6 +402,7 @@ alarm_signal_handler (signo)
int signo;
{
pending_atimers = 1;
+ pending_signals = 1;
#ifndef SYNC_INPUT
run_timers ();
#endif
@@ -439,6 +445,7 @@ init_atimer ()
{
free_atimers = atimers = NULL;
pending_atimers = 0;
+ /* pending_signals is initialized in init_keyboard.*/
signal (SIGALRM, alarm_signal_handler);
}