aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Server.Implementations/Persistence/CleanDatabaseScheduledTask.cs
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Server.Implementations/Persistence/CleanDatabaseScheduledTask.cs')
-rw-r--r--MediaBrowser.Server.Implementations/Persistence/CleanDatabaseScheduledTask.cs21
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)
{