diff options
| author | Luke <luke.pulverenti@gmail.com> | 2015-10-03 23:15:35 -0400 |
|---|---|---|
| committer | Luke <luke.pulverenti@gmail.com> | 2015-10-03 23:15:35 -0400 |
| commit | 64c1628160d31482d6b74fd82a6dfd0c9cf5de96 (patch) | |
| tree | 132b0786e5c52e3f22a465f1bfb6c28b4b5c1988 | |
| parent | 0ee844dd46f98a009c656afb3ca8618902a725d8 (diff) | |
| parent | 8259d14c50e2aa14ecb26875e52af6f0e3c7a436 (diff) | |
Merge pull request #1210 from softworkz/SourcePathTooLong
Auto-Organize: PathTooLongException on source file should not break auto-organize task
| -rw-r--r-- | MediaBrowser.Server.Implementations/FileOrganization/TvFolderOrganizer.cs | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/MediaBrowser.Server.Implementations/FileOrganization/TvFolderOrganizer.cs b/MediaBrowser.Server.Implementations/FileOrganization/TvFolderOrganizer.cs index 12cf86c17..b84bf9514 100644 --- a/MediaBrowser.Server.Implementations/FileOrganization/TvFolderOrganizer.cs +++ b/MediaBrowser.Server.Implementations/FileOrganization/TvFolderOrganizer.cs @@ -35,7 +35,22 @@ namespace MediaBrowser.Server.Implementations.FileOrganization _providerManager = providerManager; } - public async Task Organize(TvFileOrganizationOptions options, CancellationToken cancellationToken, IProgress<double> progress) + private bool FilterValidVideoFile(FileInfo fileInfo) + { + try + { + var fullName = fileInfo.FullName; + return _libraryManager.IsVideoFile(fileInfo.FullName); + } + catch (Exception ex) + { + _logger.ErrorException("Error organizing file {0}", ex, fileInfo.Name); + } + + return false; + } + + public async Task Organize(AutoOrganizeOptions options, CancellationToken cancellationToken, IProgress<double> progress) { var minFileBytes = options.MinFileSizeMb * 1024 * 1024; @@ -43,7 +58,7 @@ namespace MediaBrowser.Server.Implementations.FileOrganization var eligibleFiles = watchLocations.SelectMany(GetFilesToOrganize) .OrderBy(_fileSystem.GetCreationTimeUtc) - .Where(i => _libraryManager.IsVideoFile(i.FullName) && i.Length >= minFileBytes) + .Where(i => FilterValidVideoFile(i) && i.Length >= minFileBytes) .ToList(); var processedFolders = new HashSet<string>(); |
