Message129967
| Author |
vstinner |
| Recipients |
brian.curtin, eric.araujo, jldm, ned.deily, r.david.murray, vstinner |
| Date |
2011年03月03日.13:18:53 |
| SpamBayes Score |
4.001185e-09 |
| Marked as misclassified |
No |
| Message-id |
<1299158335.88.0.505301219882.issue10197@psf.upfronthosting.co.za> |
| In-reply-to |
| Content |
subprocess_getoutput.patch: patch subprocess.getstatusoutput() to use directly Popen, instead of os.popen, with stderr=subprocess.STDOUT instead of "2>&1" shell redirection. It strips also all trailing spaces and newlines, not just the last one. And finally, it removes "Availability: UNIX." from the documentation.
I tried to add a shell argument (to be able to disable the shell) and to accept any Popen keyword, but I don't know how to implement shell=False if the input is a list of arguments. list2cmdline() is unsafe on UNIX (see #8972). And if getstatusoutput() doesn't accept argument list, it becomes useless with shell=False (it doesn't support to call a program with arguments).
Note: the status is still shifted on UNIX to be compatible with the wait() format. |
|