diff options
author | Zac Medico <zmedico@gentoo.org> | 2010-08-13 21:29:54 -0700 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2010-08-13 21:29:54 -0700 |
commit | 8b73b101f9f5bc9892b2b8f651625fba372c2db6 (patch) | |
tree | c9128e1c0ae098a1dca453af735662add2415d28 | |
parent | 20bbc6397a97c9eaae672070b9c54b566070d1ff (diff) | |
download | portage-8b73b101f9f5bc9892b2b8f651625fba372c2db6.tar.gz portage-8b73b101f9f5bc9892b2b8f651625fba372c2db6.tar.bz2 portage-8b73b101f9f5bc9892b2b8f651625fba372c2db6.zip |
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).
-rw-r--r-- | pym/_emerge/AbstractPollTask.py | 6 |
1 files changed, 1 insertions, 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() - |