summaryrefslogtreecommitdiffstats
path: root/Lib
diff options
context:
space:
mode:
Diffstat (limited to 'Lib')
-rw-r--r--Lib/popen2.py9
1 files changed, 5 insertions, 4 deletions
diff --git a/Lib/popen2.py b/Lib/popen2.py
index d6ff002..8a17641 100644
--- a/Lib/popen2.py
+++ b/Lib/popen2.py
@@ -83,10 +83,11 @@ class Popen3:
def wait(self):
"""Wait for and return the exit status of the child process."""
- pid, sts = os.waitpid(self.pid, 0)
- if pid == self.pid:
- self.sts = sts
- _active.remove(self)
+ if self.sts < 0:
+ pid, sts = os.waitpid(self.pid, 0)
+ if pid == self.pid:
+ self.sts = sts
+ _active.remove(self)
return self.sts