mirror of
https://codeberg.org/gaschz/passff-host.git
synced 2025-06-06 18:08:46 +02:00
Rewrite subprocess run (Python >= 3.5)
This commit is contained in:
parent
799507372c
commit
ac4b33830a
@ -81,25 +81,19 @@ if __name__ == "__main__":
|
|||||||
# Set up subprocess params
|
# Set up subprocess params
|
||||||
cmd = [command] + opt_args + ['--'] + pos_args
|
cmd = [command] + opt_args + ['--'] + pos_args
|
||||||
proc_params = {
|
proc_params = {
|
||||||
|
'input': bytes(std_input, charset) if std_input else None,
|
||||||
'stdout': subprocess.PIPE,
|
'stdout': subprocess.PIPE,
|
||||||
'stderr': subprocess.PIPE,
|
'stderr': subprocess.PIPE,
|
||||||
'env': env
|
'env': env
|
||||||
}
|
}
|
||||||
if std_input is not None:
|
|
||||||
proc_params['stdin'] = subprocess.PIPE
|
|
||||||
|
|
||||||
# Run and communicate with pass script
|
# Run and communicate with pass script
|
||||||
proc = subprocess.Popen(cmd, **proc_params)
|
proc = subprocess.run(cmd, **proc_params)
|
||||||
if std_input is not None:
|
|
||||||
proc_in = bytes(std_input, charset)
|
|
||||||
proc_out, proc_err = proc.communicate(input=proc_in)
|
|
||||||
else:
|
|
||||||
proc_out, proc_err = proc.communicate()
|
|
||||||
|
|
||||||
# Send response
|
# Send response
|
||||||
sendMessage(encodeMessage({
|
sendMessage(encodeMessage({
|
||||||
"exitCode": proc.returncode,
|
"exitCode": proc.returncode,
|
||||||
"stdout": proc_out.decode(charset),
|
"stdout": proc.stdout.decode(charset),
|
||||||
"stderr": proc_err.decode(charset),
|
"stderr": proc.stderr.decode(charset),
|
||||||
"version": VERSION
|
"version": VERSION
|
||||||
}))
|
}))
|
||||||
|
Loading…
x
Reference in New Issue
Block a user