diff --git a/src/NzbDrone.Core/IndexerSearch/ReleaseSearchService.cs b/src/NzbDrone.Core/IndexerSearch/ReleaseSearchService.cs index 3af963f78..13fcddc62 100644 --- a/src/NzbDrone.Core/IndexerSearch/ReleaseSearchService.cs +++ b/src/NzbDrone.Core/IndexerSearch/ReleaseSearchService.cs @@ -421,9 +421,18 @@ private async Task> SearchAnimeSeason(Series series, List downloadDecisions.AddRange(decisions); } - foreach (var episode in episodesToSearch) + if (downloadDecisions.Any()) { - downloadDecisions.AddRange(await SearchAnime(series, episode, monitoredOnly, userInvokedSearch, interactiveSearch, true)); + _logger.Debug("Season search returned results for {0}, skipping per-episode search for {1} episodes", series.Title, episodesToSearch.Count); + } + else + { + _logger.Debug("No season results for {0}, falling back to per-episode search for {1} episodes", series.Title, episodesToSearch.Count); + + foreach (var episode in episodesToSearch) + { + downloadDecisions.AddRange(await SearchAnime(series, episode, monitoredOnly, userInvokedSearch, interactiveSearch, true)); + } } return DeDupeDecisions(downloadDecisions); diff --git a/src/NzbDrone.Core/Indexers/Newznab/NewznabRequestGenerator.cs b/src/NzbDrone.Core/Indexers/Newznab/NewznabRequestGenerator.cs index 4dd06eb2a..b0ca4e6f4 100644 --- a/src/NzbDrone.Core/Indexers/Newznab/NewznabRequestGenerator.cs +++ b/src/NzbDrone.Core/Indexers/Newznab/NewznabRequestGenerator.cs @@ -450,7 +450,7 @@ public virtual IndexerPageableRequestChain GetSearchRequests(AnimeSeasonSearchCr { var pageableRequests = new IndexerPageableRequestChain(); - if (SupportsSearch && Settings.AnimeStandardFormatSearch && searchCriteria.SeasonNumber > 0) + if (SupportsSearch && searchCriteria.SeasonNumber > 0) { AddTvIdPageableRequests(pageableRequests, Settings.AnimeCategories, diff --git a/src/NzbDrone.Core/Indexers/Nyaa/NyaaRequestGenerator.cs b/src/NzbDrone.Core/Indexers/Nyaa/NyaaRequestGenerator.cs index 92e9d6254..367fed877 100644 --- a/src/NzbDrone.Core/Indexers/Nyaa/NyaaRequestGenerator.cs +++ b/src/NzbDrone.Core/Indexers/Nyaa/NyaaRequestGenerator.cs @@ -87,9 +87,9 @@ public virtual IndexerPageableRequestChain GetSearchRequests(AnimeSeasonSearchCr { var pageableRequests = new IndexerPageableRequestChain(); - foreach (var searchTitle in searchCriteria.SceneTitles.Select(PrepareQuery)) + if (searchCriteria.SeasonNumber > 0) { - if (Settings.AnimeStandardFormatSearch && searchCriteria.SeasonNumber > 0) + foreach (var searchTitle in searchCriteria.SceneTitles.Select(PrepareQuery)) { pageableRequests.Add(GetPagedRequests($"{searchTitle}+s{searchCriteria.SeasonNumber:00}")); }