Skip to content

Commit 0df3425

Browse files
Use communicate() to prevent deadlock
1 parent 4f2e411 commit 0df3425

File tree

1 file changed

+4
-3
lines changed

1 file changed

+4
-3
lines changed

zx.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -109,14 +109,15 @@ def run_shell_alternate(command: str) -> Tuple[str, str, int]:
109109
stderr=subprocess.PIPE,
110110
shell=True,
111111
)
112-
process.wait()
112+
113+
stdout_text, stderr_text = process.communicate()
113114
assert process.stdout is not None
114115
assert process.stderr is not None
115116
assert process.returncode is not None
116117

117118
return (
118-
process.stdout.read().decode(),
119-
process.stderr.read().decode(),
119+
stdout_text.decode(),
120+
stderr_text.decode(),
120121
process.returncode,
121122
)
122123

0 commit comments

Comments
 (0)