cmd.py: Fix busy loop.

This commit is contained in:
Qubasa
2024-01-12 00:13:21 +01:00
parent 1d489438bd
commit 05aaa180e0

View File

@@ -20,12 +20,15 @@ class Log(Enum):
BOTH = 3 BOTH = 3
NONE = 4 NONE = 4
def handle_output(process: subprocess.Popen, log: Log) -> tuple[str, str]: def handle_output(process: subprocess.Popen, log: Log) -> tuple[str, str]:
rlist = [process.stdout, process.stderr] rlist = [process.stdout, process.stderr]
stdout_buf = b"" stdout_buf = b""
stderr_buf = b"" stderr_buf = b""
while process.poll() is None: while process.poll() is None:
if len(rlist) == 0:
break
r, _, _ = select.select(rlist, [], [], 0) r, _, _ = select.select(rlist, [], [], 0)
def handle_fd(fd: IO[Any] | None) -> bytes: def handle_fd(fd: IO[Any] | None) -> bytes: