aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Providers/Music/AlbumMetadataService.cs
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Providers/Music/AlbumMetadataService.cs')
-rw-r--r--MediaBrowser.Providers/Music/AlbumMetadataService.cs16
1 files changed, 9 insertions, 7 deletions
diff --git a/MediaBrowser.Providers/Music/AlbumMetadataService.cs b/MediaBrowser.Providers/Music/AlbumMetadataService.cs
index 11348361a..90248e418 100644
--- a/MediaBrowser.Providers/Music/AlbumMetadataService.cs
+++ b/MediaBrowser.Providers/Music/AlbumMetadataService.cs
@@ -104,14 +104,15 @@ namespace MediaBrowser.Providers.Music
{
var updateType = ItemUpdateType.None;
- var albumArtists = songs
+ var artists = songs
.SelectMany(i => i.AlbumArtists)
.Distinct(StringComparer.OrdinalIgnoreCase)
+ .OrderBy(i => i)
.ToList();
- if (!item.AlbumArtists.SequenceEqual(albumArtists, StringComparer.OrdinalIgnoreCase))
+ if (!item.AlbumArtists.SequenceEqual(artists, StringComparer.OrdinalIgnoreCase))
{
- item.AlbumArtists = albumArtists;
+ item.AlbumArtists = artists;
updateType = updateType | ItemUpdateType.MetadataEdit;
}
@@ -122,14 +123,15 @@ namespace MediaBrowser.Providers.Music
{
var updateType = ItemUpdateType.None;
- var currentList = item.Artists.ToList();
-
- item.Artists = songs.SelectMany(i => i.Artists)
+ var artists = songs
+ .SelectMany(i => i.Artists)
.Distinct(StringComparer.OrdinalIgnoreCase)
+ .OrderBy(i => i)
.ToList();
- if (currentList.Count != item.Artists.Count || !currentList.OrderBy(i => i).SequenceEqual(item.Artists.OrderBy(i => i), StringComparer.OrdinalIgnoreCase))
+ if (!item.Artists.SequenceEqual(artists, StringComparer.OrdinalIgnoreCase))
{
+ item.Artists = artists;
updateType = updateType | ItemUpdateType.MetadataEdit;
}