From c02d6c426c17f793377428faea00062261d2a4d6 Mon Sep 17 00:00:00 2001 From: Taloth Saldono Date: Fri, 3 Jul 2015 21:21:49 +0200 Subject: [PATCH] Fixed: TorrentRssParser incorrectly detected description element. --- .../Files/Indexers/TorrentRss/Doki.xml | 53 +++++++++++++++++++ .../TorrentRssSettingsDetectorFixture.cs | 1 + .../NzbDrone.Core.Test.csproj | 3 ++ .../Indexers/TorrentRssParser.cs | 4 +- 4 files changed, 59 insertions(+), 2 deletions(-) create mode 100644 src/NzbDrone.Core.Test/Files/Indexers/TorrentRss/Doki.xml diff --git a/src/NzbDrone.Core.Test/Files/Indexers/TorrentRss/Doki.xml b/src/NzbDrone.Core.Test/Files/Indexers/TorrentRss/Doki.xml new file mode 100644 index 000000000..27416803c --- /dev/null +++ b/src/NzbDrone.Core.Test/Files/Indexers/TorrentRss/Doki.xml @@ -0,0 +1,53 @@ + + + + Doki Fansubs Torrents (latest) + http://tracker.anime-index.org/index.php?page=torrents&search=doki&category=0&active=0 + [Doki] Torrents RSS (generated by Yukinrss) + 15 + Thu, 02 Jul 2015 08:18:28 GMT + Yukinrss 1.03.58 (http://yukinrss.net/) + + http://yukinrss.net/img/rss-doki.png + Doki Fansubs Torrents (latest) + http://tracker.anime-index.org/index.php?page=torrents&search=doki&category=0&active=0 + 144 + 52 + + + [Doki] PriPara 50 (848x480 h264 AAC) [6F0B49FD] mkv + Thu, 02 Jul 2015 08:18:29 GMT + http://tracker.anime-index.org/index.php?page=torrents&search=doki&category=0&active=0 + http://tracker.anime-index.org/download.php?id=82d8ad84403e01a7786130905ca169a3429e657f&f=%5BDoki%5D+PriPara+-+50+%28848x480+h264+AAC%29+%5B6F0B49FD%5D.mkv.torrent + + + + [Doki] PriPara 50 (1280x720 Hi10P AAC) [441163C4] mkv + Thu, 02 Jul 2015 08:18:29 GMT + http://tracker.anime-index.org/index.php?page=torrents&search=doki&category=0&active=0 + http://tracker.anime-index.org/download.php?id=8f7d8bf3d68bb03c88f3fb9b17fd07ca96265085&f=%5BDoki%5D+PriPara+-+50+%281280x720+Hi10P+AAC%29+%5B441163C4%5D.mkv.torrent + + + + [Doki] Hitoribocchi no OO Seikatsu Chapter 10 [52706FCC] zip + Sat, 27 Jun 2015 10:01:02 GMT + http://tracker.anime-index.org/index.php?page=torrents&search=doki&category=0&active=0 + http://tracker.anime-index.org/download.php?id=52b245c90ba00b9755c1b49eaad15da8c39ae742&f=%5BDoki%5D+Hitoribocchi+no+OO+Seikatsu+-+Chapter+10+%5B52706FCC%5D.zip.torrent + + + + [Doki] PriPara 49 (1280x720 Hi10P AAC) [328C34F3] mkv + Fri, 26 Jun 2015 00:54:59 GMT + http://tracker.anime-index.org/index.php?page=torrents&search=doki&category=0&active=0 + http://tracker.anime-index.org/download.php?id=a376fbcd79a40f7ad11eb5af2951a33fb11b8394&f=%5BDoki%5D+PriPara+-+49+%281280x720+Hi10P+AAC%29+%5B328C34F3%5D.mkv.torrent + + + + [Doki] PriPara 44 (848x480 h264 AAC) [43DB504A] mkv + Thu, 14 May 2015 01:21:19 GMT + http://tracker.anime-index.org/index.php?page=torrents&search=doki&category=0&active=0 + http://tracker.anime-index.org/download.php?id=239196fdeb6427e9c11d69d2853642873481d855&f=%5BDoki%5D+PriPara+-+44+%28848x480+h264+AAC%29+%5B43DB504A%5D.mkv.torrent + + + + \ No newline at end of file diff --git a/src/NzbDrone.Core.Test/IndexerTests/TorrentRssIndexerTests/TorrentRssSettingsDetectorFixture.cs b/src/NzbDrone.Core.Test/IndexerTests/TorrentRssIndexerTests/TorrentRssSettingsDetectorFixture.cs index 0a9f77ba0..62b35bc66 100644 --- a/src/NzbDrone.Core.Test/IndexerTests/TorrentRssIndexerTests/TorrentRssSettingsDetectorFixture.cs +++ b/src/NzbDrone.Core.Test/IndexerTests/TorrentRssIndexerTests/TorrentRssSettingsDetectorFixture.cs @@ -195,6 +195,7 @@ namespace NzbDrone.Core.Test.IndexerTests.TorrentRssIndexerTests [TestCase("Wombles/wombles.xml")] [TestCase("TorrentRss/invalid/Eztv_InvalidSize.xml")] [TestCase("TorrentRss/invalid/ImmortalSeed_InvalidSize.xml")] + [TestCase("TorrentRss/Doki.xml")] public void should_detect_feed_without_size(string rssXmlFile) { _indexerSettings.AllowZeroSize = true; diff --git a/src/NzbDrone.Core.Test/NzbDrone.Core.Test.csproj b/src/NzbDrone.Core.Test/NzbDrone.Core.Test.csproj index 12e11e476..eec74d081 100644 --- a/src/NzbDrone.Core.Test/NzbDrone.Core.Test.csproj +++ b/src/NzbDrone.Core.Test/NzbDrone.Core.Test.csproj @@ -396,6 +396,9 @@ Always + + Always + Designer Always diff --git a/src/NzbDrone.Core/Indexers/TorrentRssParser.cs b/src/NzbDrone.Core/Indexers/TorrentRssParser.cs index 7473fe8d6..53aae1986 100644 --- a/src/NzbDrone.Core/Indexers/TorrentRssParser.cs +++ b/src/NzbDrone.Core/Indexers/TorrentRssParser.cs @@ -67,7 +67,7 @@ namespace NzbDrone.Core.Indexers protected virtual Int32? GetSeeders(XElement item) { - if (ParseSeedersInDescription) + if (ParseSeedersInDescription && item.Element("description") != null) { var matchSeeders = ParseSeedersRegex.Match(item.Element("description").Value); @@ -90,7 +90,7 @@ namespace NzbDrone.Core.Indexers protected virtual Int32? GetPeers(XElement item) { - if (ParseSeedersInDescription) + if (ParseSeedersInDescription && item.Element("description") != null) { var matchPeers = ParsePeersRegex.Match(item.Element("description").Value);