From ec05a2d5803db2e9d38e1126b8b88062b9e11ce8 Mon Sep 17 00:00:00 2001 From: Peter Astrand Date: Sun, 7 Jan 2007 08:53:46 +0000 Subject: [PATCH] Re-implemented fix for #1531862 once again, in a way that works with Python 2.2. Fixes bug #1603424. --- Lib/subprocess.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/Lib/subprocess.py b/Lib/subprocess.py index 981612214a2..abd790dd92a 100644 --- a/Lib/subprocess.py +++ b/Lib/subprocess.py @@ -1004,8 +1004,12 @@ class Popen(object): # Close pipe fds. Make sure we don't close the same # fd more than once, or standard fds. - for fd in set((p2cread, c2pwrite, errwrite))-set((0,1,2)): - if fd: os.close(fd) + if p2cread and p2cread not in (0,): + os.close(p2cread) + if c2pwrite and c2pwrite not in (p2cread, 1): + os.close(c2pwrite) + if errwrite and errwrite not in (p2cread, c2pwrite, 2): + os.close(errwrite) # Close all other fds, if asked for if close_fds: