diff Lib/subprocess.py @ 39793:363ef804a096 legacy-trunk

Fixed subprocess bug #1531862 again, after removing tests offending buildbot
author Gustavo Niemeyer <gustavo@niemeyer.net>
date Thu, 07 Sep 2006 00:48:33 +0000
parents 2a730fb6f34b
children a72d970c384b
line wrap: on
line diff
--- a/Lib/subprocess.py	Wed Sep 06 20:40:22 2006 +0000
+++ b/Lib/subprocess.py	Thu Sep 07 00:48:33 2006 +0000
@@ -1000,14 +1000,10 @@
                     if errwrite:
                         os.dup2(errwrite, 2)
 
-                    # Close pipe fds.  Make sure we doesn't close the same
-                    # fd more than once.
-                    if p2cread:
-                        os.close(p2cread)
-                    if c2pwrite and c2pwrite not in (p2cread,):
-                        os.close(c2pwrite)
-                    if errwrite and errwrite not in (p2cread, c2pwrite):
-                        os.close(errwrite)
+                    # 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)
 
                     # Close all other fds, if asked for
                     if close_fds: