diff --git a/NzbDrone.Core/Fluent.cs b/NzbDrone.Core/Fluent.cs index 4f8c3fc2b..f72eef471 100644 --- a/NzbDrone.Core/Fluent.cs +++ b/NzbDrone.Core/Fluent.cs @@ -20,9 +20,14 @@ public static string WithDefault(this string actual, object defaultValue) } - public static double Megabytes(this int megabytes) + public static Int64 Megabytes(this int megabytes) { return megabytes * 1048576; } + + public static Int64 Gigabytes(this int gigabytes) + { + return gigabytes * 1073741824; + } } } diff --git a/NzbDrone.Core/Providers/DiskScanProvider.cs b/NzbDrone.Core/Providers/DiskScanProvider.cs index 9451dc5d2..7c04d7eb4 100644 --- a/NzbDrone.Core/Providers/DiskScanProvider.cs +++ b/NzbDrone.Core/Providers/DiskScanProvider.cs @@ -92,7 +92,7 @@ public virtual EpisodeFile ImportFile(Series series, string filePath) long size = _diskProvider.GetSize(filePath); //If Size is less than 40MB and contains sample. Check for Size to ensure its not an episode with sample in the title - if (size < 40000000 && filePath.ToLower().Contains("sample")) + if (size < 40.Megabytes() && filePath.ToLower().Contains("sample")) { Logger.Trace("[{0}] appears to be a sample. skipping.", filePath); return null; diff --git a/NzbDrone.Core/Providers/Jobs/PostDownloadScanJob.cs b/NzbDrone.Core/Providers/Jobs/PostDownloadScanJob.cs index 7483a783e..dbf84db30 100644 --- a/NzbDrone.Core/Providers/Jobs/PostDownloadScanJob.cs +++ b/NzbDrone.Core/Providers/Jobs/PostDownloadScanJob.cs @@ -86,9 +86,11 @@ public virtual void Start(ProgressNotification notification, int targetId) var importedFiles = _diskScanProvider.Scan(series, subfolder); importedFiles.ForEach(file => _diskScanProvider.MoveEpisodeFile(file)); - //Delete the folder only if all files were removed - if (_diskProvider.GetDirectorySize(subfolder) < 1.Megabytes()) + //Delete the folder only if folder is small enough + if (_diskProvider.GetDirectorySize(subfolder) < 10.Megabytes()) + { _diskProvider.DeleteFolder(subfolder, true); + } } catch (Exception e) {