diff options
author | Andreas Schwab <schwab@linux-m68k.org> | 2012-03-24 09:32:50 +0100 |
---|---|---|
committer | Andreas Schwab <schwab@linux-m68k.org> | 2012-03-24 09:32:50 +0100 |
commit | 7d1c3a76cf92f366549b6588191fd7eb71b9abcc (patch) | |
tree | eaa5dd971d1e22007706128aa28ff3940a187830 /src | |
parent | e99a9b8bdccadded1f6fae88ee7a2a93dfd4eacf (diff) | |
download | emacs-7d1c3a76cf92f366549b6588191fd7eb71b9abcc.tar.gz |
Fixes: debbugs:11080
* xterm.c (XTread_socket): Only modify handling_signal if
!SYNC_INPUT.
Diffstat (limited to 'src')
-rw-r--r-- | src/ChangeLog | 5 | ||||
-rw-r--r-- | src/xterm.c | 7 |
2 files changed, 11 insertions, 1 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 028b8325aae..11676be8348 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,8 @@ +2012-03-24 Andreas Schwab <schwab@linux-m68k.org> + + * xterm.c (XTread_socket): Only modify handling_signal if + !SYNC_INPUT. (Bug#11080) + 2012-03-23 Eli Zaretskii <eliz@gnu.org> * bidi.c (bidi_fetch_char): Use STRING_CHAR_AND_LENGTH instead of diff --git a/src/xterm.c b/src/xterm.c index ddc5db23414..9ce166883c3 100644 --- a/src/xterm.c +++ b/src/xterm.c @@ -7099,7 +7099,8 @@ x_dispatch_event (XEvent *event, Display *display) /* Read events coming from the X server. - This routine is called by the SIGIO handler. + This routine is called by the SIGIO handler only if SYNC_INPUT is + not defined. We return as soon as there are no more events to be read. We return the number of characters stored into the buffer, @@ -7133,7 +7134,9 @@ XTread_socket (struct terminal *terminal, int expected, struct input_event *hold /* So people can tell when we have read the available input. */ input_signal_count++; +#ifndef SYNC_INPUT ++handling_signal; +#endif /* For debugging, this gives a way to fake an I/O error. */ if (terminal->display_info.x == XTread_socket_fake_io_error) @@ -7223,7 +7226,9 @@ XTread_socket (struct terminal *terminal, int expected, struct input_event *hold pending_autoraise_frame = 0; } +#ifndef SYNC_INPUT --handling_signal; +#endif UNBLOCK_INPUT; return count; |