From 799a567a738839e0a24d39358d8d32bc3adab144 Mon Sep 17 00:00:00 2001 From: Marcel van der Veldt Date: Sun, 9 Mar 2025 22:50:18 +0100 Subject: [PATCH] Fix small race condition in snapcast teardown --- music_assistant/providers/snapcast/__init__.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/music_assistant/providers/snapcast/__init__.py b/music_assistant/providers/snapcast/__init__.py index 1f011889..9e2860e9 100644 --- a/music_assistant/providers/snapcast/__init__.py +++ b/music_assistant/providers/snapcast/__init__.py @@ -341,6 +341,10 @@ class SnapCastProvider(PlayerProvider): self._stop_called = True for snap_client_id in self._snapserver.clients: player_id = self._get_ma_id(snap_client_id) + if not (player := self.mass.players.get(player_id, raise_unavailable=False)): + continue + if player.state != PlayerState.PLAYING: + continue await self.cmd_stop(player_id) self._snapserver.stop() await self._stop_builtin_server() -- 2.34.1