From 3c5e7ba37f7c8e38d0a621868dce1ceb8d285ed3 Mon Sep 17 00:00:00 2001 From: Emil Kitti Date: Sun, 28 Mar 2021 04:42:54 +0200 Subject: [PATCH 1/3] Verify Sonarr quality override Ombi implicitly trusts that the quality override is set correctly, and causes issues downstream. Line 258 in [TvSender.cs](https://github.com/Ombi-app/Ombi/tree/develop/src/Ombi.Core/Senders/TvSender.cs#L258) it tries to add a series but the, `AddSeries` function in [SonarrApi.cs](https://github.com/Ombi-app/Ombi/blob/develop/src/Ombi.Api.Sonarr/SonarrApi.cs#L92) fails to validate the `NewSeries` object since the `qualityProfileId` attribute is set to `0`. In the end it assumes the series is added in Sonarr and causes a API request with series id set to `0` which causes the following error. ``` [Error] StatusCode: BadRequest, Reason: Bad Request, RequestUri: http://SONARR_HOST/sonarr/api/series/0 ``` --- src/Ombi.Core/Senders/TvSender.cs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/Ombi.Core/Senders/TvSender.cs b/src/Ombi.Core/Senders/TvSender.cs index 9cb98a40b..b812cbb51 100644 --- a/src/Ombi.Core/Senders/TvSender.cs +++ b/src/Ombi.Core/Senders/TvSender.cs @@ -206,7 +206,11 @@ public async Task SendToSonarr(ChildRequests model, SonarrSettings s) // Overrides on the request take priority if (model.ParentRequest.QualityOverride.HasValue) { - qualityToUse = model.ParentRequest.QualityOverride.Value; + overrideQuality = model.ParentRequest.QualityOverride.Value; + if (overrideQuality > 0) + { + qualityToUse = overrideQuality; + } } if (model.ParentRequest.RootFolder.HasValue) { @@ -547,4 +551,4 @@ private async Task GetSonarrRootPath(int pathId, SonarrSettings sonarrSe return string.Empty; } } -} \ No newline at end of file +} From 87d8ba04996d83de9ebd6fd13da21f970eac5718 Mon Sep 17 00:00:00 2001 From: Emil Kitti Date: Sun, 28 Mar 2021 05:24:26 +0200 Subject: [PATCH 2/3] Fix --- src/Ombi.Core/Senders/TvSender.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Ombi.Core/Senders/TvSender.cs b/src/Ombi.Core/Senders/TvSender.cs index b812cbb51..c94935a31 100644 --- a/src/Ombi.Core/Senders/TvSender.cs +++ b/src/Ombi.Core/Senders/TvSender.cs @@ -206,7 +206,7 @@ public async Task SendToSonarr(ChildRequests model, SonarrSettings s) // Overrides on the request take priority if (model.ParentRequest.QualityOverride.HasValue) { - overrideQuality = model.ParentRequest.QualityOverride.Value; + var overrideQuality = model.ParentRequest.QualityOverride.Value; if (overrideQuality > 0) { qualityToUse = overrideQuality; From 45bcfca138c649875f471abaae63b3d828d78d10 Mon Sep 17 00:00:00 2001 From: Emil Kitti Date: Sun, 28 Mar 2021 05:53:22 +0200 Subject: [PATCH 3/3] Fix rootfolder override rootfolder override has the same issue --- src/Ombi.Core/Senders/TvSender.cs | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/Ombi.Core/Senders/TvSender.cs b/src/Ombi.Core/Senders/TvSender.cs index c94935a31..9fc971ab5 100644 --- a/src/Ombi.Core/Senders/TvSender.cs +++ b/src/Ombi.Core/Senders/TvSender.cs @@ -206,15 +206,19 @@ public async Task SendToSonarr(ChildRequests model, SonarrSettings s) // Overrides on the request take priority if (model.ParentRequest.QualityOverride.HasValue) { - var overrideQuality = model.ParentRequest.QualityOverride.Value; - if (overrideQuality > 0) + var qualityOverride = model.ParentRequest.QualityOverride.Value; + if (qualityOverride > 0) { - qualityToUse = overrideQuality; + qualityToUse = qualityOverride; } } if (model.ParentRequest.RootFolder.HasValue) { - rootFolderPath = await GetSonarrRootPath(model.ParentRequest.RootFolder.Value, s); + var rootfolderOverride = model.ParentRequest.RootFolder.Value; + if (rootfolderOverride > 0) + { + rootFolderPath = await GetSonarrRootPath(rootfolderOverride, s); + } } // Are we using v3 sonarr?