[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] /srv/bzr/emacs/trunk r104724: Fix handling of pending sign
From: |
Chong Yidong |
Subject: |
[Emacs-diffs] /srv/bzr/emacs/trunk r104724: Fix handling of pending signals in wait_reading_process_output (Bug#8869). |
Date: |
Sat, 25 Jun 2011 23:40:40 -0400 |
User-agent: |
Bazaar (2.3.1) |
------------------------------------------------------------
revno: 104724
committer: Chong Yidong <address@hidden>
branch nick: trunk
timestamp: Sat 2011-06-25 23:40:40 -0400
message:
Fix handling of pending signals in wait_reading_process_output (Bug#8869).
* process.c (wait_reading_process_output): Bypass select if
waiting for a cell while ignoring keyboard input, and input is
pending. Suggested by Jan Djärv.
modified:
src/ChangeLog
src/process.c
=== modified file 'src/ChangeLog'
--- a/src/ChangeLog 2011-06-25 20:53:24 +0000
+++ b/src/ChangeLog 2011-06-26 03:40:40 +0000
@@ -1,3 +1,9 @@
+2011-06-26 Chong Yidong <address@hidden>
+
+ * process.c (wait_reading_process_output): Bypass select if
+ waiting for a cell while ignoring keyboard input, and input is
+ pending. Suggested by Jan Djärv (Bug#8869).
+
2011-06-25 Paul Eggert <address@hidden>
Use gnulib's dup2 module instead of rolling our own.
@@ -351,7 +357,7 @@
2011-06-22 Jim Meyering <address@hidden>
- don't leak an XBM-image-sized buffer
+ Don't leak an XBM-image-sized buffer
* image.c (xbm_load): Free the image buffer after using it.
2011-06-21 Paul Eggert <address@hidden>
=== modified file 'src/process.c'
--- a/src/process.c 2011-06-24 21:25:22 +0000
+++ b/src/process.c 2011-06-26 03:40:40 +0000
@@ -4479,13 +4479,19 @@
set_waiting_for_input (&timeout);
}
+ /* Skip the `select' call if input is available and we're
+ waiting for keyboard input or a cell change (which can be
+ triggered by processing X events). In the latter case, set
+ nfds to 1 to avoid breaking the loop. */
no_avail = 0;
- if (read_kbd && detect_input_pending ())
+ if ((read_kbd || !NILP (wait_for_cell))
+ && detect_input_pending ())
{
- nfds = 0;
+ nfds = read_kbd ? 0 : 1;
no_avail = 1;
}
- else
+
+ if (!no_avail)
{
#ifdef ADAPTIVE_READ_BUFFERING
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] /srv/bzr/emacs/trunk r104724: Fix handling of pending signals in wait_reading_process_output (Bug#8869).,
Chong Yidong <=