From 6e479235cba9e96276059a1d17c1f015dc1e152f Mon Sep 17 00:00:00 2001 From: Bogdan Date: Tue, 19 Sep 2023 07:05:28 +0300 Subject: [PATCH] Fixed: Skip parsing releases without title (cherry picked from commit c7824bb593291634bf14a5f7aa689666969b03bf) --- src/NzbDrone.Common/Extensions/PathExtensions.cs | 2 +- src/NzbDrone.Core/Indexers/HttpIndexerBase.cs | 10 +++++++++- src/NzbDrone.Core/Parser/QualityParser.cs | 7 ++++++- 3 files changed, 16 insertions(+), 3 deletions(-) diff --git a/src/NzbDrone.Common/Extensions/PathExtensions.cs b/src/NzbDrone.Common/Extensions/PathExtensions.cs index 0c60d2e65..dad4cdc5f 100644 --- a/src/NzbDrone.Common/Extensions/PathExtensions.cs +++ b/src/NzbDrone.Common/Extensions/PathExtensions.cs @@ -170,7 +170,7 @@ namespace NzbDrone.Common.Extensions { if (text.IsNullOrWhiteSpace()) { - throw new ArgumentNullException("text"); + throw new ArgumentNullException(nameof(text)); } return text.IndexOfAny(Path.GetInvalidPathChars()) >= 0; diff --git a/src/NzbDrone.Core/Indexers/HttpIndexerBase.cs b/src/NzbDrone.Core/Indexers/HttpIndexerBase.cs index 365a6af5a..9f60f6e18 100644 --- a/src/NzbDrone.Core/Indexers/HttpIndexerBase.cs +++ b/src/NzbDrone.Core/Indexers/HttpIndexerBase.cs @@ -257,9 +257,17 @@ namespace NzbDrone.Core.Indexers protected virtual bool IsValidRelease(ReleaseInfo release) { + if (release.Title.IsNullOrWhiteSpace()) + { + _logger.Trace("Invalid Release: '{0}' from indexer: {1}. No title provided.", release.InfoUrl, Definition.Name); + + return false; + } + if (release.DownloadUrl.IsNullOrWhiteSpace()) { - _logger.Trace("Invalid Release: '{0}' from indexer: {1}. No Download URL provided.", release.Title, release.Indexer); + _logger.Trace("Invalid Release: '{0}' from indexer: {1}. No Download URL provided.", release.Title, Definition.Name); + return false; } diff --git a/src/NzbDrone.Core/Parser/QualityParser.cs b/src/NzbDrone.Core/Parser/QualityParser.cs index 17faab082..e8bceb239 100644 --- a/src/NzbDrone.Core/Parser/QualityParser.cs +++ b/src/NzbDrone.Core/Parser/QualityParser.cs @@ -46,7 +46,12 @@ namespace NzbDrone.Core.Parser public static QualityModel ParseQuality(string name, string desc, int fileBitrate, int fileSampleSize = 0) { - Logger.Debug("Trying to parse quality for {0}", name); + Logger.Debug("Trying to parse quality for '{0}'", name); + + if (name.IsNullOrWhiteSpace()) + { + return new QualityModel { Quality = Quality.Unknown }; + } var normalizedName = name.Replace('_', ' ').Trim().ToLower(); var result = ParseQualityModifiers(name, normalizedName);