From 8b73b101f9f5bc9892b2b8f651625fba372c2db6 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Fri, 13 Aug 2010 21:29:54 -0700 Subject: [PATCH] Stop handling POLLHUP events, since we're only polling for input and POLLHUP is really intendend for purposes of output polling. Hopefully this solves a problem with POLLHUP events causing premature unregistration of event handlers (and subsequent hang in waitpid). --- pym/_emerge/AbstractPollTask.py | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/pym/_emerge/AbstractPollTask.py b/pym/_emerge/AbstractPollTask.py index 1feee15f6..b654a615f 100644 --- a/pym/_emerge/AbstractPollTask.py +++ b/pym/_emerge/AbstractPollTask.py @@ -10,7 +10,7 @@ class AbstractPollTask(AsynchronousTask): _bufsize = 4096 _exceptional_events = PollConstants.POLLERR | PollConstants.POLLNVAL - _registered_events = PollConstants.POLLIN | PollConstants.POLLHUP | \ + _registered_events = PollConstants.POLLIN | \ _exceptional_events def _unregister(self): @@ -21,7 +21,3 @@ class AbstractPollTask(AsynchronousTask): if event & self._exceptional_events: self._unregister() self.cancel() - elif event & PollConstants.POLLHUP: - self._unregister() - self.wait() - -- 2.26.2