diff --git a/src/common/xmpp/idlequeue.py b/src/common/xmpp/idlequeue.py index 5ee73c987..ad92b7408 100644 --- a/src/common/xmpp/idlequeue.py +++ b/src/common/xmpp/idlequeue.py @@ -204,16 +204,18 @@ class SelectIdleQueue(IdleQueue): except select.error, e: waiting_descriptors = ((),(),()) if e[0] != 4: # interrupt - raise - for fd in waiting_descriptors[0]: - q = self.queue.get(fd) - if q: + raise + for fd in waiting_descriptors[0]: + q = self.queue.get(fd) + if q: q.pollin() for fd in waiting_descriptors[1]: - q = self.queue.get(fd) - if q: + q = self.queue.get(fd) + if q: q.pollout() for fd in waiting_descriptors[2]: - self.queue.get(fd).pollend() + q = self.queue.get(fd) + if q: + q.pollend() self.check_time_events() return True