summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJuanma Barranquero <lekktu@gmail.com>2009-01-30 13:06:07 +0000
committerJuanma Barranquero <lekktu@gmail.com>2009-01-30 13:06:07 +0000
commit07a1e794413237cc72419a965ad88f0592a69e9c (patch)
tree5df68d813475b49eba7095469780cb3294e03a48 /src
parent5e36bc052b3bec251684eee0db8bfed9f9cca342 (diff)
downloademacs-07a1e794413237cc72419a965ad88f0592a69e9c.tar.gz
* atimer.c (run_timers, alarm_signal_handler):
* keyboard.c (pending_signals, handle_async_input, init_keyboard): * w32inevt.c (w32_console_read_socket): * w32term.c (w32_read_socket): * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog8
-rw-r--r--src/atimer.c8
-rw-r--r--src/keyboard.c6
-rw-r--r--src/w32inevt.c4
-rw-r--r--src/w32term.c4
-rw-r--r--src/xterm.c4
6 files changed, 33 insertions, 1 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 67aa38209fc..91d39e7b580 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,11 @@
+2009-01-30 Juanma Barranquero <lekktu@gmail.com>
+
+ * atimer.c (run_timers, alarm_signal_handler):
+ * keyboard.c (pending_signals, handle_async_input, init_keyboard):
+ * w32inevt.c (w32_console_read_socket):
+ * w32term.c (w32_read_socket):
+ * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
+
2009-01-30 Chong Yidong <cyd@stupidchicken.com>
* callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
diff --git a/src/atimer.c b/src/atimer.c
index 6767ee59c0e..1653b629abf 100644
--- a/src/atimer.c
+++ b/src/atimer.c
@@ -384,6 +384,7 @@ run_timers ()
EMACS_GET_TIME (now);
}
+#ifdef SYNC_INPUT
if (pending_atimers)
pending_signals = 1;
else
@@ -391,6 +392,10 @@ run_timers ()
pending_signals = interrupt_input_pending;
set_alarm ();
}
+#else
+ if (! pending_atimers)
+ set_alarm ();
+#endif
}
@@ -402,8 +407,9 @@ alarm_signal_handler (signo)
int signo;
{
pending_atimers = 1;
+#ifdef SYNC_INPUT
pending_signals = 1;
-#ifndef SYNC_INPUT
+#else
run_timers ();
#endif
}
diff --git a/src/keyboard.c b/src/keyboard.c
index 8e3d51b7e77..f3ebf9fdc96 100644
--- a/src/keyboard.c
+++ b/src/keyboard.c
@@ -96,7 +96,9 @@ int interrupt_input_pending;
pending_atimers separately, to reduce code size. So, any code that
changes interrupt_input_pending or pending_atimers should update
this too. */
+#ifdef SYNC_INPUT
int pending_signals;
+#endif
#define KBD_BUFFER_SIZE 4096
@@ -7271,7 +7273,9 @@ void
handle_async_input ()
{
interrupt_input_pending = 0;
+#ifdef SYNC_INPUT
pending_signals = pending_atimers;
+#endif
while (1)
{
@@ -11556,7 +11560,9 @@ init_keyboard ()
input_pending = 0;
interrupt_input_blocked = 0;
interrupt_input_pending = 0;
+#ifdef SYNC_INPUT
pending_signals = 0;
+#endif
/* This means that command_loop_1 won't try to select anything the first
time through. */
diff --git a/src/w32inevt.c b/src/w32inevt.c
index 05f7bd224f7..7552ff17bb9 100644
--- a/src/w32inevt.c
+++ b/src/w32inevt.c
@@ -651,12 +651,16 @@ w32_console_read_socket (struct terminal *terminal,
if (interrupt_input_blocked)
{
interrupt_input_pending = 1;
+#ifdef SYNC_INPUT
pending_signals = 1;
+#endif
return -1;
}
interrupt_input_pending = 0;
+#ifdef SYNC_INPUT
pending_signals = pending_atimers;
+#endif
BLOCK_INPUT;
for (;;)
diff --git a/src/w32term.c b/src/w32term.c
index bcdadc4b22b..6e2f9ffa4dc 100644
--- a/src/w32term.c
+++ b/src/w32term.c
@@ -4078,12 +4078,16 @@ w32_read_socket (sd, expected, hold_quit)
if (interrupt_input_blocked)
{
interrupt_input_pending = 1;
+#ifdef SYNC_INPUT
pending_signals = 1;
+#endif
return -1;
}
interrupt_input_pending = 0;
+#ifdef SYNC_INPUT
pending_signals = pending_atimers;
+#endif
BLOCK_INPUT;
/* So people can tell when we have read the available input. */
diff --git a/src/xterm.c b/src/xterm.c
index 1cd1ff059cf..00064758cdc 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -7138,12 +7138,16 @@ XTread_socket (terminal, expected, hold_quit)
if (interrupt_input_blocked)
{
interrupt_input_pending = 1;
+#ifdef SYNC_INPUT
pending_signals = 1;
+#endif
return -1;
}
interrupt_input_pending = 0;
+#ifdef SYNC_INPUT
pending_signals = pending_atimers;
+#endif
BLOCK_INPUT;
/* So people can tell when we have read the available input. */