diff options
Diffstat (limited to 'MediaBrowser.Server.Implementations/Persistence/CleanDatabaseScheduledTask.cs')
| -rw-r--r-- | MediaBrowser.Server.Implementations/Persistence/CleanDatabaseScheduledTask.cs | 21 |
1 files changed, 15 insertions, 6 deletions
diff --git a/MediaBrowser.Server.Implementations/Persistence/CleanDatabaseScheduledTask.cs b/MediaBrowser.Server.Implementations/Persistence/CleanDatabaseScheduledTask.cs index c9f7165cb..709ed5ec9 100644 --- a/MediaBrowser.Server.Implementations/Persistence/CleanDatabaseScheduledTask.cs +++ b/MediaBrowser.Server.Implementations/Persistence/CleanDatabaseScheduledTask.cs @@ -184,15 +184,24 @@ namespace MediaBrowser.Server.Implementations.Persistence try { - if (!_fileSystem.FileExists(path) && !_fileSystem.DirectoryExists(path)) + if (_fileSystem.FileExists(path) || _fileSystem.DirectoryExists(path)) { - var libraryItem = _libraryManager.GetItemById(item.Item1); + continue; + } + + var libraryItem = _libraryManager.GetItemById(item.Item1); - await _libraryManager.DeleteItem(libraryItem, new DeleteOptions - { - DeleteFileLocation = false - }); + if (Folder.IsPathOffline(path)) + { + libraryItem.IsOffline = true; + await libraryItem.UpdateToRepository(ItemUpdateType.None, cancellationToken).ConfigureAwait(false); + continue; } + + await _libraryManager.DeleteItem(libraryItem, new DeleteOptions + { + DeleteFileLocation = false + }); } catch (OperationCanceledException) { |
