From 4e3a5cb6d9caa3f3c25b3d03edd36f073e5ed28a Mon Sep 17 00:00:00 2001 From: cmdr2 Date: Tue, 1 Oct 2024 16:25:56 +0530 Subject: [PATCH] Automatically restart webui if it stops/crashes --- ui/easydiffusion/backends/webui/__init__.py | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/ui/easydiffusion/backends/webui/__init__.py b/ui/easydiffusion/backends/webui/__init__.py index abeece38..94d9ff03 100644 --- a/ui/easydiffusion/backends/webui/__init__.py +++ b/ui/easydiffusion/backends/webui/__init__.py @@ -69,8 +69,13 @@ def start_backend(): global backend_process cmd = "webui.bat" if platform.system() == "Windows" else "webui.sh" - print("starting", cmd, WEBUI_DIR) - backend_process = subprocess.Popen([cmd], shell=True, cwd=WEBUI_DIR, env=env) + + while True: + print("starting", cmd, WEBUI_DIR) + backend_process = subprocess.Popen([cmd], shell=True, cwd=WEBUI_DIR, env=env) + backend_process.wait() + + stop_backend() backend_thread = threading.Thread(target=target) backend_thread.start() @@ -80,7 +85,10 @@ def stop_backend(): global backend_process if backend_process: - kill(backend_process.pid) + try: + kill(backend_process.pid) + except: + pass backend_process = None