aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Server.Implementations/Persistence/CleanDatabaseScheduledTask.cs
diff options
context:
space:
mode:
authorLuke <luke.pulverenti@gmail.com>2016-03-17 01:54:12 -0400
committerLuke <luke.pulverenti@gmail.com>2016-03-17 01:54:12 -0400
commitb61fa36ceb2cd22eabd4e792ca31f71f236c7e49 (patch)
treeb6e9a26bdd18858e9ca32dfad4818f720707cd56 /MediaBrowser.Server.Implementations/Persistence/CleanDatabaseScheduledTask.cs
parent3e2a7fcf5c0debaa91120b929b2c9cff21afcdd3 (diff)
parent43b6e3bd42e67d3034d19fe36ef6651c098018b6 (diff)
Merge pull request #1552 from MediaBrowser/dev
Dev
Diffstat (limited to 'MediaBrowser.Server.Implementations/Persistence/CleanDatabaseScheduledTask.cs')
-rw-r--r--MediaBrowser.Server.Implementations/Persistence/CleanDatabaseScheduledTask.cs15
1 files changed, 14 insertions, 1 deletions
diff --git a/MediaBrowser.Server.Implementations/Persistence/CleanDatabaseScheduledTask.cs b/MediaBrowser.Server.Implementations/Persistence/CleanDatabaseScheduledTask.cs
index 7ff81e5c1..028d9eb1f 100644
--- a/MediaBrowser.Server.Implementations/Persistence/CleanDatabaseScheduledTask.cs
+++ b/MediaBrowser.Server.Implementations/Persistence/CleanDatabaseScheduledTask.cs
@@ -266,6 +266,19 @@ namespace MediaBrowser.Server.Implementations.Persistence
continue;
}
+ var hasDualAccess = libraryItem as IHasDualAccess;
+ if (hasDualAccess != null && hasDualAccess.IsAccessedByName)
+ {
+ continue;
+ }
+
+ var libraryItemPath = libraryItem.Path;
+ if (!string.Equals(libraryItemPath, path, StringComparison.OrdinalIgnoreCase))
+ {
+ _logger.Error("CleanDeletedItems aborting delete for item {0}-{1} because paths don't match. {2}---{3}", libraryItem.Id, libraryItem.Name, libraryItem.Path ?? string.Empty, path ?? string.Empty);
+ continue;
+ }
+
if (Folder.IsPathOffline(path))
{
libraryItem.IsOffline = true;
@@ -273,7 +286,7 @@ namespace MediaBrowser.Server.Implementations.Persistence
continue;
}
- _logger.Info("Deleting item from database {0} because path no longer exists. type: {1} path: {2}", libraryItem.Name, libraryItem.GetType().Name, libraryItem.Path ?? string.Empty);
+ _logger.Info("Deleting item from database {0} because path no longer exists. type: {1} path: {2}", libraryItem.Name, libraryItem.GetType().Name, libraryItemPath ?? string.Empty);
await libraryItem.OnFileDeleted().ConfigureAwait(false);
}