diff --git a/src/NzbDrone.Core/Profiles/ProfileService.cs b/src/NzbDrone.Core/Profiles/ProfileService.cs index 37014191c..1317b10b9 100644 --- a/src/NzbDrone.Core/Profiles/ProfileService.cs +++ b/src/NzbDrone.Core/Profiles/ProfileService.cs @@ -6,6 +6,7 @@ using NzbDrone.Core.Messaging.Events; using NzbDrone.Core.Parser; using NzbDrone.Core.Qualities; using NzbDrone.Core.Tv; +using NzbDrone.Core.Music; namespace NzbDrone.Core.Profiles { @@ -22,13 +23,13 @@ namespace NzbDrone.Core.Profiles public class ProfileService : IProfileService, IHandle { private readonly IProfileRepository _profileRepository; - private readonly ISeriesService _seriesService; + private readonly IArtistService _artistService; private readonly Logger _logger; - public ProfileService(IProfileRepository profileRepository, ISeriesService seriesService, Logger logger) + public ProfileService(IProfileRepository profileRepository, IArtistService artistService, Logger logger) { _profileRepository = profileRepository; - _seriesService = seriesService; + _artistService = artistService; _logger = logger; } @@ -44,7 +45,7 @@ namespace NzbDrone.Core.Profiles public void Delete(int id) { - if (_seriesService.GetAllSeries().Any(c => c.ProfileId == id)) + if (_artistService.GetAllArtists().Any(c => c.ProfileId == id)) { throw new ProfileInUseException(id); } diff --git a/src/NzbDrone.Core/Qualities/Quality.cs b/src/NzbDrone.Core/Qualities/Quality.cs index acb949cc2..4a8b45026 100644 --- a/src/NzbDrone.Core/Qualities/Quality.cs +++ b/src/NzbDrone.Core/Qualities/Quality.cs @@ -103,6 +103,10 @@ namespace NzbDrone.Core.Qualities public static Quality FindById(int id) { if (id == 0) return Unknown; + else if (id > AllLookup.Length) + { + throw new ArgumentException("ID does not match a known quality", nameof(id)); + } var quality = AllLookup[id];