diff options
Diffstat (limited to 'MediaBrowser.Controller/Entities')
| -rw-r--r-- | MediaBrowser.Controller/Entities/Audio/MusicAlbum.cs | 33 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Entities/MusicVideo.cs | 2 |
2 files changed, 34 insertions, 1 deletions
diff --git a/MediaBrowser.Controller/Entities/Audio/MusicAlbum.cs b/MediaBrowser.Controller/Entities/Audio/MusicAlbum.cs index 6ad38033a..f40ab3cde 100644 --- a/MediaBrowser.Controller/Entities/Audio/MusicAlbum.cs +++ b/MediaBrowser.Controller/Entities/Audio/MusicAlbum.cs @@ -9,6 +9,7 @@ using MediaBrowser.Model.Serialization; using System.Threading; using System.Threading.Tasks; using MediaBrowser.Controller.Library; +using MediaBrowser.Model.Dto; namespace MediaBrowser.Controller.Entities.Audio { @@ -227,7 +228,39 @@ namespace MediaBrowser.Controller.Entities.Audio // Refresh current item await RefreshMetadata(parentRefreshOptions, cancellationToken).ConfigureAwait(false); + if (!refreshOptions.IsAutomated) + { + await RefreshArtists(refreshOptions, cancellationToken).ConfigureAwait(false); + } + progress.Report(100); } + + private async Task RefreshArtists(MetadataRefreshOptions refreshOptions, CancellationToken cancellationToken) + { + var artists = AllArtists.Select(i => + { + // This should not be necessary but we're seeing some cases of it + if (string.IsNullOrWhiteSpace(i)) + { + return null; + } + + var artist = LibraryManager.GetArtist(i); + + if (!artist.IsAccessedByName) + { + return null; + } + + return artist; + + }).Where(i => i != null).ToList(); + + foreach (var artist in artists) + { + await artist.RefreshMetadata(refreshOptions, cancellationToken).ConfigureAwait(false); + } + } } } diff --git a/MediaBrowser.Controller/Entities/MusicVideo.cs b/MediaBrowser.Controller/Entities/MusicVideo.cs index c781ef85b..7344cb8e4 100644 --- a/MediaBrowser.Controller/Entities/MusicVideo.cs +++ b/MediaBrowser.Controller/Entities/MusicVideo.cs @@ -29,7 +29,7 @@ namespace MediaBrowser.Controller.Entities { get { - return true; + return false; } } |
