fix(virtdisplay): wait() Xvfb child process to prevent zombie process

This commit is contained in:
LY
2026-05-20 09:19:24 +08:00
parent 4adfef9cbd
commit ce5edf6f5c
+7
View File
@@ -116,6 +116,13 @@ class VirtualDisplay:
if self.debug:
print("Terminating virtual display:", self._display)
self.proc.terminate()
try:
self.proc.wait(timeout=5)
except subprocess.TimeoutExpired:
if self.debug:
print("Xvfb did not exit in time, killing forcefully")
self.proc.kill()
self.proc.wait()
@staticmethod
def _assert_linux() -> None: