diff options
| author | Chong Yidong | 2009-01-29 14:33:14 +0000 |
|---|---|---|
| committer | Chong Yidong | 2009-01-29 14:33:14 +0000 |
| commit | 325530dec76c10dfa64f3a9e5ddc521906609059 (patch) | |
| tree | 7b8f34be3ba70cfbd759316fa047875da31bab9c /src | |
| parent | 55310b94ebec5a1614ea52454e088d50580a175b (diff) | |
| download | emacs-325530dec76c10dfa64f3a9e5ddc521906609059.tar.gz emacs-325530dec76c10dfa64f3a9e5ddc521906609059.zip | |
(run_timers, alarm_signal_handler): Update pending_signals.
Diffstat (limited to 'src')
| -rw-r--r-- | src/atimer.c | 11 |
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 () | |||
| 384 | EMACS_GET_TIME (now); | 384 | EMACS_GET_TIME (now); |
| 385 | } | 385 | } |
| 386 | 386 | ||
| 387 | if (! pending_atimers) | 387 | if (pending_atimers) |
| 388 | set_alarm (); | 388 | pending_signals = 1; |
| 389 | else | ||
| 390 | { | ||
| 391 | pending_signals = interrupt_input_pending; | ||
| 392 | set_alarm (); | ||
| 393 | } | ||
| 389 | } | 394 | } |
| 390 | 395 | ||
| 391 | 396 | ||
| @@ -397,6 +402,7 @@ alarm_signal_handler (signo) | |||
| 397 | int signo; | 402 | int signo; |
| 398 | { | 403 | { |
| 399 | pending_atimers = 1; | 404 | pending_atimers = 1; |
| 405 | pending_signals = 1; | ||
| 400 | #ifndef SYNC_INPUT | 406 | #ifndef SYNC_INPUT |
| 401 | run_timers (); | 407 | run_timers (); |
| 402 | #endif | 408 | #endif |
| @@ -439,6 +445,7 @@ init_atimer () | |||
| 439 | { | 445 | { |
| 440 | free_atimers = atimers = NULL; | 446 | free_atimers = atimers = NULL; |
| 441 | pending_atimers = 0; | 447 | pending_atimers = 0; |
| 448 | /* pending_signals is initialized in init_keyboard.*/ | ||
| 442 | signal (SIGALRM, alarm_signal_handler); | 449 | signal (SIGALRM, alarm_signal_handler); |
| 443 | } | 450 | } |
| 444 | 451 | ||