From: cociweb Date: Thu, 15 May 2025 20:11:33 +0000 (+0200) Subject: Fix: Prevent NoneType error whenever the track or album name is empty in a Plex playl... X-Git-Url: https://git.kitaultman.com/?a=commitdiff_plain;h=e1b4a4bebc7d965c34ab9013fdcfe08848c3f79f;p=music-assistant-server.git Fix: Prevent NoneType error whenever the track or album name is empty in a Plex playlist (#2182) --- diff --git a/music_assistant/providers/plex/__init__.py b/music_assistant/providers/plex/__init__.py index 40d1244e..e997da59 100644 --- a/music_assistant/providers/plex/__init__.py +++ b/music_assistant/providers/plex/__init__.py @@ -425,17 +425,34 @@ class PlexProvider(MusicProvider): return cast("PlexObjectT", results) def _get_item_mapping(self, media_type: MediaType, key: str, name: str) -> ItemMapping: - name, version = parse_title_and_version(name) - if media_type in (MediaType.ALBUM, MediaType.TRACK): - name, version = parse_title_and_version(name) - else: - version = "" + """Get item mapping for a given media type, key, and name.""" + if not name: + self.logger.info( + "Received None or empty name for media item. Media type: %s, Key: %s", + media_type, + key, + ) + name = "[Unknown]" + + mapped_name, mapped_version = parse_title_and_version(name) + + if not mapped_name: + self.logger.info( + "Failed to map name for media item. Media type: %s, Key: %s, Original name: %s", + media_type, + key, + name, + ) + mapped_name = "[Unknown]" + if not mapped_version and media_type not in (MediaType.ALBUM, MediaType.TRACK): + mapped_version = "" + return ItemMapping( media_type=media_type, item_id=key, provider=self.lookup_key, - name=name, - version=version, + name=mapped_name, + version=mapped_version, ) async def _get_or_create_artist_by_name(self, artist_name: str) -> Artist | ItemMapping: