aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Api/LibraryService.cs
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Api/LibraryService.cs')
-rw-r--r--MediaBrowser.Api/LibraryService.cs24
1 files changed, 18 insertions, 6 deletions
diff --git a/MediaBrowser.Api/LibraryService.cs b/MediaBrowser.Api/LibraryService.cs
index 2e9ea6ceb..582eb6f49 100644
--- a/MediaBrowser.Api/LibraryService.cs
+++ b/MediaBrowser.Api/LibraryService.cs
@@ -615,9 +615,15 @@ namespace MediaBrowser.Api
if (album != null)
{
- themeSongIds = album.SoundtrackIds
- .SelectMany(i => _libraryManager.GetItemById(i).ThemeSongIds)
- .ToList();
+ var linkedItemWithThemes = album.SoundtrackIds
+ .Select(i => _libraryManager.GetItemById(i))
+ .FirstOrDefault(i => i.ThemeSongIds.Count > 0);
+
+ if (linkedItemWithThemes != null)
+ {
+ themeSongIds = linkedItemWithThemes.ThemeSongIds;
+ item = linkedItemWithThemes;
+ }
}
}
@@ -677,9 +683,15 @@ namespace MediaBrowser.Api
if (album != null)
{
- themeVideoIds = album.SoundtrackIds
- .SelectMany(i => _libraryManager.GetItemById(i).ThemeVideoIds)
- .ToList();
+ var linkedItemWithThemes = album.SoundtrackIds
+ .Select(i => _libraryManager.GetItemById(i))
+ .FirstOrDefault(i => i.ThemeVideoIds.Count > 0);
+
+ if (linkedItemWithThemes != null)
+ {
+ themeVideoIds = linkedItemWithThemes.ThemeVideoIds;
+ item = linkedItemWithThemes;
+ }
}
}