From 9754ef2f152dd24d182cb16cfcbe1b9100d1a66f Mon Sep 17 00:00:00 2001 From: OzGav Date: Tue, 26 Aug 2025 20:40:04 +1000 Subject: [PATCH] Fix missing file breaks queue (#2341) --- .../providers/filesystem_local/__init__.py | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/music_assistant/providers/filesystem_local/__init__.py b/music_assistant/providers/filesystem_local/__init__.py index 222b3f73..5ca6d910 100644 --- a/music_assistant/providers/filesystem_local/__init__.py +++ b/music_assistant/providers/filesystem_local/__init__.py @@ -841,11 +841,19 @@ class LocalFileSystemProvider(MusicProvider): async def get_stream_details(self, item_id: str, media_type: MediaType) -> StreamDetails: """Return the content details for the given track when it will be streamed.""" - if media_type == MediaType.AUDIOBOOK: - return await self._get_stream_details_for_audiobook(item_id) - if media_type == MediaType.PODCAST_EPISODE: - return await self._get_stream_details_for_podcast_episode(item_id) - return await self._get_stream_details_for_track(item_id) + try: + if media_type == MediaType.AUDIOBOOK: + return await self._get_stream_details_for_audiobook(item_id) + if media_type == MediaType.PODCAST_EPISODE: + return await self._get_stream_details_for_podcast_episode(item_id) + return await self._get_stream_details_for_track(item_id) + except FileNotFoundError: + self.logger.warning( + "File not found for media item %s", + item_id, + ) + msg = f"Media file not found: {item_id}" + raise MediaNotFoundError(msg) async def resolve_image(self, path: str) -> str | bytes: """ -- 2.34.1