Issue 33282: Subprocess Popen communicate hung if stdin not given to Popen, even though script not expecting any input (original) (raw)
Hi needed a small help related to the subprocess module I'm executing a powershell process using the subprocess module
process = subprocess.Popen( [ 'powershell.exe', script ], stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True )
output, error = process.communicate()
but the call to the communicate method is getting hung on some machines, and not all
i tried to debug the subprocess module but couldn't find anything helpful
the script is not expecting any input from the user
on the machines where it failed, if I just add stdin=subprocess.PIPE argument, it works
process = subprocess.Popen( [ 'powershell.exe', script ], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True )
above works