Ignore small race in sonos player
authorMarcel van der Veldt <m.vanderveldt@outlook.com>
Sat, 25 Jan 2025 12:40:26 +0000 (13:40 +0100)
committerMarcel van der Veldt <m.vanderveldt@outlook.com>
Sat, 25 Jan 2025 12:40:26 +0000 (13:40 +0100)
music_assistant/providers/sonos/player.py

index 0b64211995c4a8332a40c61fa873a3575eedf939..c6c009f9441cd6c39fc495d416d8cd980777764f 100644 (file)
@@ -488,6 +488,11 @@ class SonosPlayer:
             or play_modes.repeat != repeat_all_enabled
             or play_modes.repeat_one != repeat_single_enabled
         ):
-            await self.client.player.group.set_play_modes(
-                crossfade=crossfade, repeat=repeat_all_enabled, repeat_one=repeat_single_enabled
-            )
+            try:
+                await self.client.player.group.set_play_modes(
+                    crossfade=crossfade, repeat=repeat_all_enabled, repeat_one=repeat_single_enabled
+                )
+            except FailedCommand as err:
+                if "groupCoordinatorChanged" not in str(err):
+                    # this may happen at race conditions
+                    raise