changeset fced3b88c6bd in /home/hg/repos/gajim
details:http://hg.gajim.org/gajim?cmd=changeset;node=fced3b88c6bd description: check error before incoming or outgoing events. Fixes #5991
diffstat:
src/common/xmpp/idlequeue.py | 14 ++++++++------ 1 files changed, 8 insertions(+), 6 deletions(-)
diffs (32 lines):
diff -r 2608f3432ad1 -r fced3b88c6bd src/common/xmpp/idlequeue.py --- a/src/common/xmpp/idlequeue.py Tue Jan 25 11:54:28 2011 +0100 +++ b/src/common/xmpp/idlequeue.py Mon Oct 25 21:06:45 2010 +0200 @@ -388,20 +388,22 @@ self.unplug_idle(fd) return False
+ if flags & IS_CLOSED: + # io error, don't expect more events + self.remove_timeout(obj.fd) + self.unplug_idle(obj.fd) + obj.pollend() + return False + if flags & PENDING_READ: #print 'waiting read on %d, flags are %d' % (fd, flags) obj.pollin() return True
- elif flags & PENDING_WRITE: + if flags & PENDING_WRITE: obj.pollout() return True
- elif flags & IS_CLOSED: - # io error, don't expect more events - self.remove_timeout(obj.fd) - self.unplug_idle(obj.fd) - obj.pollend() return False
def process(self):