aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Server.Implementations/IO
diff options
context:
space:
mode:
authorLuis Miguel Almánzar <ruisu15@gmail.com>2013-11-02 21:19:43 -0400
committerLuis Miguel Almánzar <ruisu15@gmail.com>2013-11-02 21:19:43 -0400
commitce8821c94256e365a217480c077c7f0c4cb42b2c (patch)
tree59952b63e492f6cb2a3da2986c17245166b98b6b /MediaBrowser.Server.Implementations/IO
parent8a0606e9704f98e368cea4a1391b21fb7e2dec03 (diff)
parent96d4b9c43b69c0a31196487994476024d3d8b13b (diff)
Merge branch 'master' of github.com:MediaBrowser/MediaBrowser
Diffstat (limited to 'MediaBrowser.Server.Implementations/IO')
-rw-r--r--MediaBrowser.Server.Implementations/IO/DirectoryWatchers.cs28
1 files changed, 27 insertions, 1 deletions
diff --git a/MediaBrowser.Server.Implementations/IO/DirectoryWatchers.cs b/MediaBrowser.Server.Implementations/IO/DirectoryWatchers.cs
index 330469877..748ba0df4 100644
--- a/MediaBrowser.Server.Implementations/IO/DirectoryWatchers.cs
+++ b/MediaBrowser.Server.Implementations/IO/DirectoryWatchers.cs
@@ -361,7 +361,33 @@ namespace MediaBrowser.Server.Implementations.IO
if (e.ChangeType == WatcherChangeTypes.Changed)
{
// If the parent of an ignored path has a change event, ignore that too
- if (tempIgnorePaths.Any(i => string.Equals(Path.GetDirectoryName(i), e.FullPath, StringComparison.OrdinalIgnoreCase) || string.Equals(i, e.FullPath, StringComparison.OrdinalIgnoreCase)))
+ if (tempIgnorePaths.Any(i =>
+ {
+ if (string.Equals(i, e.FullPath, StringComparison.OrdinalIgnoreCase))
+ {
+ return true;
+ }
+
+ // Go up a level
+ var parent = Path.GetDirectoryName(i);
+ if (string.Equals(parent, e.FullPath, StringComparison.OrdinalIgnoreCase))
+ {
+ return true;
+ }
+
+ // Go up another level
+ if (!string.IsNullOrEmpty(parent))
+ {
+ parent = Path.GetDirectoryName(i);
+ if (string.Equals(parent, e.FullPath, StringComparison.OrdinalIgnoreCase))
+ {
+ return true;
+ }
+ }
+
+ return false;
+
+ }))
{
return;
}