aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Server.Implementations
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Server.Implementations')
-rw-r--r--MediaBrowser.Server.Implementations/Dto/DtoService.cs5
-rw-r--r--MediaBrowser.Server.Implementations/Library/LibraryManager.cs5
-rw-r--r--MediaBrowser.Server.Implementations/Library/LuceneSearchEngine.cs14
-rw-r--r--MediaBrowser.Server.Implementations/Sorting/ArtistComparer.cs2
4 files changed, 16 insertions, 10 deletions
diff --git a/MediaBrowser.Server.Implementations/Dto/DtoService.cs b/MediaBrowser.Server.Implementations/Dto/DtoService.cs
index 66e3613f55..4ad2479e61 100644
--- a/MediaBrowser.Server.Implementations/Dto/DtoService.cs
+++ b/MediaBrowser.Server.Implementations/Dto/DtoService.cs
@@ -893,7 +893,7 @@ namespace MediaBrowser.Server.Implementations.Dto
{
dto.Album = audio.Album;
dto.AlbumArtist = audio.AlbumArtist;
- dto.Artists = new[] { audio.Artist };
+ dto.Artists = audio.Artists.ToArray();
var albumParent = audio.FindParent<MusicAlbum>();
@@ -919,8 +919,7 @@ namespace MediaBrowser.Server.Implementations.Dto
dto.AlbumArtist = songs.Select(i => i.AlbumArtist).FirstOrDefault(i => !string.IsNullOrEmpty(i));
dto.Artists =
- songs.Select(i => i.Artist ?? string.Empty)
- .Where(i => !string.IsNullOrEmpty(i))
+ songs.SelectMany(i => i.Artists)
.Distinct(StringComparer.OrdinalIgnoreCase)
.ToArray();
}
diff --git a/MediaBrowser.Server.Implementations/Library/LibraryManager.cs b/MediaBrowser.Server.Implementations/Library/LibraryManager.cs
index 29a495247c..d9ab75397c 100644
--- a/MediaBrowser.Server.Implementations/Library/LibraryManager.cs
+++ b/MediaBrowser.Server.Implementations/Library/LibraryManager.cs
@@ -900,10 +900,7 @@ namespace MediaBrowser.Server.Implementations.Library
{
list.Add(c.AlbumArtist);
}
- if (!string.IsNullOrEmpty(c.Artist))
- {
- list.Add(c.Artist);
- }
+ list.AddRange(c.Artists);
return list;
})
diff --git a/MediaBrowser.Server.Implementations/Library/LuceneSearchEngine.cs b/MediaBrowser.Server.Implementations/Library/LuceneSearchEngine.cs
index 0fd39a25d3..d8b8a18e92 100644
--- a/MediaBrowser.Server.Implementations/Library/LuceneSearchEngine.cs
+++ b/MediaBrowser.Server.Implementations/Library/LuceneSearchEngine.cs
@@ -120,8 +120,18 @@ namespace MediaBrowser.Server.Implementations.Library
// Find artists
var artists = items.OfType<Audio>()
- .SelectMany(i => new[] { i.Artist, i.AlbumArtist })
- .Where(i => !string.IsNullOrEmpty(i))
+ .SelectMany(i =>
+ {
+ var list = new List<string>();
+
+ if (!string.IsNullOrEmpty(i.AlbumArtist))
+ {
+ list.Add(i.AlbumArtist);
+ }
+ list.AddRange(i.Artists);
+
+ return list;
+ })
.Distinct(StringComparer.OrdinalIgnoreCase)
.ToList();
diff --git a/MediaBrowser.Server.Implementations/Sorting/ArtistComparer.cs b/MediaBrowser.Server.Implementations/Sorting/ArtistComparer.cs
index b0a6989e93..e3de0df289 100644
--- a/MediaBrowser.Server.Implementations/Sorting/ArtistComparer.cs
+++ b/MediaBrowser.Server.Implementations/Sorting/ArtistComparer.cs
@@ -37,7 +37,7 @@ namespace MediaBrowser.Server.Implementations.Sorting
return string.Empty;
}
- return audio.Artist ?? string.Empty;
+ return audio.Artists.FirstOrDefault() ?? string.Empty;
}
/// <summary>