diff --git a/lintunes/__init__.py b/lintunes/__init__.py index d96b3c3..9b6daee 100644 --- a/lintunes/__init__.py +++ b/lintunes/__init__.py @@ -1,3 +1,3 @@ """LinTunes — iTunes-style music library manager and player for Linux.""" -__version__ = "0.10.0" +__version__ = "0.10.1" diff --git a/lintunes/cast/server.py b/lintunes/cast/server.py index 4ae472b..749e776 100644 --- a/lintunes/cast/server.py +++ b/lintunes/cast/server.py @@ -157,7 +157,11 @@ class TrackServer: httpd.daemon_threads = True httpd.track_server = self self._httpd = httpd - self._thread = threading.Thread(target=httpd.serve_forever, daemon=True) + # poll_interval is how long shutdown() may block waiting for the + # serve_forever loop to notice: the default 0.5 s is paid on the GUI + # thread every time a cast session ends. + self._thread = threading.Thread( + target=lambda: httpd.serve_forever(poll_interval=0.01), daemon=True) self._thread.start() return self.port