From: Marcel van der Veldt Date: Sun, 7 Dec 2025 03:04:35 +0000 (+0100) Subject: Fix for (group)player configs X-Git-Url: https://git.kitaultman.com/?a=commitdiff_plain;h=4977092cc9681c96cba669df3887aef5fd536588;p=music-assistant-server.git Fix for (group)player configs --- diff --git a/music_assistant/controllers/config.py b/music_assistant/controllers/config.py index 8df22399..51298d5d 100644 --- a/music_assistant/controllers/config.py +++ b/music_assistant/controllers/config.py @@ -1311,25 +1311,21 @@ class ConfigController: values[CONF_SMART_FADES_MODE] = "smart_crossfade" changed = True - # migrate player configs: always use lookup key for provider - prov_configs = self._data.get(CONF_PROVIDERS, {}) + # migrate player configs: always use instance_id for provider for player_config in self._data.get(CONF_PLAYERS, {}).values(): if "provider" not in player_config: continue player_provider = player_config["provider"] - if prov_conf := prov_configs.get(player_provider): - try: - if not (prov_manifest := self.mass.get_provider_manifest(prov_conf["domain"])): - continue - except KeyError: - # removed provider - continue - if prov_manifest.multi_instance: - # multi instance providers use instance_id as lookup key + try: + if not (prov := self.mass.get_provider(player_provider)): continue - # single instance providers use domain as lookup key - player_config["provider"] = prov_conf["domain"] - changed = True + except KeyError: + # removed provider + continue + if player_config["provider"] == prov.instance_id: + continue + player_config["provider"] = prov.instance_id + changed = True if changed: await self._async_save()