From 5fe1ce1effc16046b27e27f6a007db76667479f7 Mon Sep 17 00:00:00 2001 From: Mark McDowall Date: Wed, 8 May 2019 21:58:50 -0700 Subject: [PATCH] Fixed: Don't import duplicate NFO extra files Fixes #2641 --- src/NzbDrone.Core/Extras/ExtraService.cs | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/src/NzbDrone.Core/Extras/ExtraService.cs b/src/NzbDrone.Core/Extras/ExtraService.cs index ce5b660b6..1f089e4ab 100644 --- a/src/NzbDrone.Core/Extras/ExtraService.cs +++ b/src/NzbDrone.Core/Extras/ExtraService.cs @@ -71,9 +71,28 @@ namespace NzbDrone.Core.Extras .Select(e => e.Trim(' ', '.')) .ToList(); - var matchingFilenames = files.Where(f => Path.GetFileNameWithoutExtension(f).StartsWith(sourceFileName, StringComparison.InvariantCultureIgnoreCase)); + var matchingFilenames = files.Where(f => Path.GetFileNameWithoutExtension(f).StartsWith(sourceFileName, StringComparison.InvariantCultureIgnoreCase)).ToList(); + var filteredFilenames = new List(); + var hasNfo = false; foreach (var matchingFilename in matchingFilenames) + { + // Filter out duplicate NFO files + + if (matchingFilename.EndsWith(".nfo", StringComparison.InvariantCultureIgnoreCase)) + { + if (hasNfo) + { + continue; + } + + hasNfo = true; + } + + filteredFilenames.Add(matchingFilename); + } + + foreach (var matchingFilename in filteredFilenames) { var matchingExtension = wantedExtensions.FirstOrDefault(e => matchingFilename.EndsWith(e));