emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] master 27f8719: Remove callback-handled channels from Avai


From: Tassilo Horn
Subject: [Emacs-diffs] master 27f8719: Remove callback-handled channels from Available set
Date: Tue, 22 Sep 2015 05:45:09 +0000

branch: master
commit 27f871907cc24f33a7d12ac3a4ab71a88f0bc554
Author: Tassilo Horn <address@hidden>
Commit: Tassilo Horn <address@hidden>

    Remove callback-handled channels from Available set
    
    * src/process.c (wait_reading_process_output): Remove channel from
    Available set if it is handled by a callback, e.g., dbus or
    inotify (bug#21313).
---
 src/process.c |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)

diff --git a/src/process.c b/src/process.c
index 55f31a0..73704c0 100644
--- a/src/process.c
+++ b/src/process.c
@@ -5036,7 +5036,10 @@ wait_reading_process_output (intmax_t time_limit, int 
nsecs, int read_kbd,
                   && FD_ISSET (channel, &Available))
                  || (d->condition & FOR_WRITE
                      && FD_ISSET (channel, &write_mask))))
-            d->func (channel, d->data);
+           {
+             d->func (channel, d->data);
+             FD_CLR (channel, &Available);
+           }
        }
 
       for (channel = 0; channel <= max_process_desc; channel++)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]