From 58b726a292b68bc2214a7f8056e4588eea6c6c03 Mon Sep 17 00:00:00 2001 From: Bogdan Date: Fri, 12 Jan 2024 02:39:27 +0200 Subject: [PATCH] Fixed: Improve torrent blocklist matching Closes #9585 --- .../Blocklisting/BlocklistService.cs | 24 +++++++++---------- 1 file changed, 11 insertions(+), 13 deletions(-) diff --git a/src/NzbDrone.Core/Blocklisting/BlocklistService.cs b/src/NzbDrone.Core/Blocklisting/BlocklistService.cs index 8956ac54a..aab321622 100644 --- a/src/NzbDrone.Core/Blocklisting/BlocklistService.cs +++ b/src/NzbDrone.Core/Blocklisting/BlocklistService.cs @@ -38,30 +38,28 @@ namespace NzbDrone.Core.Blocklisting public bool Blocklisted(int movieId, ReleaseInfo release) { - var blocklistedByTitle = _blocklistRepository.BlocklistedByTitle(movieId, release.Title); - if (release.DownloadProtocol == DownloadProtocol.Torrent) { - var torrentInfo = release as TorrentInfo; - - if (torrentInfo == null) + if (release is not TorrentInfo torrentInfo) { return false; } - if (torrentInfo.InfoHash.IsNullOrWhiteSpace()) + if (torrentInfo.InfoHash.IsNotNullOrWhiteSpace()) { - return blocklistedByTitle.Where(b => b.Protocol == DownloadProtocol.Torrent) - .Any(b => SameTorrent(b, torrentInfo)); - } + var blocklistedByTorrentInfohash = _blocklistRepository.BlocklistedByTorrentInfoHash(movieId, torrentInfo.InfoHash); - var blocklistedByTorrentInfohash = _blocklistRepository.BlocklistedByTorrentInfoHash(movieId, torrentInfo.InfoHash); + return blocklistedByTorrentInfohash.Any(b => SameTorrent(b, torrentInfo)); + } - return blocklistedByTorrentInfohash.Any(b => SameTorrent(b, torrentInfo)); + return _blocklistRepository.BlocklistedByTitle(movieId, release.Title) + .Where(b => b.Protocol == DownloadProtocol.Torrent) + .Any(b => SameTorrent(b, torrentInfo)); } - return blocklistedByTitle.Where(b => b.Protocol == DownloadProtocol.Usenet) - .Any(b => SameNzb(b, release)); + return _blocklistRepository.BlocklistedByTitle(movieId, release.Title) + .Where(b => b.Protocol == DownloadProtocol.Usenet) + .Any(b => SameNzb(b, release)); } public bool BlocklistedTorrentHash(int movieId, string hash)