Message139812
subprocess.check_output() doesn't close explicitly pipes if an error occurs. See for example issue #12493 for an example of an error on .communicate().
Attached patch uses a context manager to ensure that all pipes are always closed and that the status is read to avoid zombies.
Other subprocess functions should be fixed:
- call() (will fix check_call)
- getstatusoutput() (will fix getoutput): see patch attached to the issue #10197 to replace os.popen() by subprocess.Popen |
|
Date |
User |
Action |
Args |
2011-07-04 22:13:45 | vstinner | set | recipients:
+ vstinner |
2011-07-04 22:13:45 | vstinner | set | messageid: <1309817625.67.0.269796238759.issue12494@psf.upfronthosting.co.za> |
2011-07-04 22:13:45 | vstinner | link | issue12494 messages |
2011-07-04 22:13:45 | vstinner | create | |
|