From 602a71d53474e0f917b0635eab126efd3123df88 Mon Sep 17 00:00:00 2001 From: pax Date: Sun, 5 Apr 2026 18:20:20 -0500 Subject: [PATCH] Reset shared HTTP clients on startup to prevent event loop closed error Cacheless mode closes the app while clients may still reference the old event loop. Resetting to None on startup forces fresh client creation on the new event loop. --- booru_viewer/gui/app.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/booru_viewer/gui/app.py b/booru_viewer/gui/app.py index 9714cac..f81b2ad 100644 --- a/booru_viewer/gui/app.py +++ b/booru_viewer/gui/app.py @@ -227,6 +227,13 @@ class BooruApp(QMainWindow): self._async_thread = threading.Thread(target=self._async_loop.run_forever, daemon=True) self._async_thread.start() + # Reset shared HTTP clients from previous session + from ..core.cache import _get_shared_client + from ..core.api.base import BooruClient + BooruClient._shared_client = None + import booru_viewer.core.cache as _cache_mod + _cache_mod._shared_client = None + self._setup_signals() self._setup_ui() self._setup_menu()