diff --git a/src/NzbDrone.Core/MetadataSource/SkyHook/SkyHookProxy.cs b/src/NzbDrone.Core/MetadataSource/SkyHook/SkyHookProxy.cs index bffcc6b69..9dcc437e2 100644 --- a/src/NzbDrone.Core/MetadataSource/SkyHook/SkyHookProxy.cs +++ b/src/NzbDrone.Core/MetadataSource/SkyHook/SkyHookProxy.cs @@ -153,7 +153,14 @@ namespace NzbDrone.Core.MetadataSource.SkyHook try { + var existingArtist = _artistService.FindById(searchGuid.ToString()); + if (existingArtist != null) + { + return new List { existingArtist }; + } + var metadataProfile = _metadataProfileService.All().First().Id; //Change this to Use last Used profile? + return new List { GetArtistInfo(searchGuid.ToString(), metadataProfile).Item1 }; } catch (ArtistNotFoundException) @@ -210,7 +217,16 @@ namespace NzbDrone.Core.MetadataSource.SkyHook try { - return new List { GetAlbumInfo(searchGuid.ToString(), null).Item1 }; + var existingAlbum = _albumService.FindById(searchGuid.ToString()); + + if (existingAlbum == null) + { + return new List {GetAlbumInfo(searchGuid.ToString(), null).Item1}; + } + + existingAlbum.Artist = _artistService.GetArtist(existingAlbum.ArtistId); + return new List{existingAlbum}; + } catch (ArtistNotFoundException) {