Fix: Sonos player setup race condition
authorMarcel van der Veldt <m.vanderveldt@outlook.com>
Fri, 21 Feb 2025 22:07:38 +0000 (23:07 +0100)
committerMarcel van der Veldt <m.vanderveldt@outlook.com>
Fri, 21 Feb 2025 22:07:38 +0000 (23:07 +0100)
music_assistant/providers/sonos/player.py

index 5eca277dc82acc0e94c5dcf4de9614a3a572eee4..3aa32b0242fedca30b1fa455e2ddb88fb1f2f3fc 100644 (file)
@@ -434,10 +434,10 @@ class SonosPlayer:
             await self.client.connect()
         except (ConnectionFailed, ClientConnectorError) as err:
             self.logger.warning("Failed to connect to Sonos player: %s", err)
+            if not retry_on_fail or not self.mass_player:
+                raise
             self.mass_player.available = False
             self.mass.players.update(self.player_id)
-            if not retry_on_fail:
-                raise
             self.reconnect(min(retry_on_fail + 30, 3600))
             return
         self.connected = True