diff options
Diffstat (limited to 'pym/_emerge/SubProcess.py')
-rw-r--r-- | pym/_emerge/SubProcess.py | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/pym/_emerge/SubProcess.py b/pym/_emerge/SubProcess.py index 0013d7391..b2b19d54d 100644 --- a/pym/_emerge/SubProcess.py +++ b/pym/_emerge/SubProcess.py @@ -25,6 +25,9 @@ class SubProcess(AbstractPollTask): return self.returncode try: + # With waitpid and WNOHANG, only check the + # first element of the tuple since the second + # element may vary (bug #337465). retval = os.waitpid(self.pid, os.WNOHANG) except OSError as e: if e.errno != errno.ECHILD: @@ -32,7 +35,7 @@ class SubProcess(AbstractPollTask): del e retval = (self.pid, 1) - if retval == (0, 0): + if retval[0] == 0: return None self._set_returncode(retval) return self.returncode @@ -81,6 +84,9 @@ class SubProcess(AbstractPollTask): return self.returncode try: + # With waitpid and WNOHANG, only check the + # first element of the tuple since the second + # element may vary (bug #337465). wait_retval = os.waitpid(self.pid, os.WNOHANG) except OSError as e: if e.errno != errno.ECHILD: @@ -88,7 +94,7 @@ class SubProcess(AbstractPollTask): del e self._set_returncode((self.pid, 1)) else: - if wait_retval != (0, 0): + if wait_retval[0] != 0: self._set_returncode(wait_retval) else: try: |