Mark players unavailable if provider is unloaded
authorMarcel van der Veldt <m.vanderveldt@outlook.com>
Fri, 14 Jun 2024 21:16:00 +0000 (23:16 +0200)
committerMarcel van der Veldt <m.vanderveldt@outlook.com>
Fri, 14 Jun 2024 21:16:00 +0000 (23:16 +0200)
music_assistant/server/server.py

index 9443d4cd9034a2072ffc09e69a1c82e742fd8a14..6c6f26f6b3f7102f9bb24c4e3271291e43be5a3d 100644 (file)
@@ -451,6 +451,11 @@ class MusicAssistant:
             for dep_prov in self.providers:
                 if dep_prov.manifest.depends_on == provider.domain:
                     await self.unload_provider(dep_prov.instance_id)
+            if provider.type == ProviderType.PLAYER:
+                # mark all players of this provider as unavailable
+                for player in provider.players:
+                    player.available = False
+                    self.players.update(player.player_id)
             try:
                 await provider.unload()
             except Exception as err: