Просмотр исходного кода

Don't assume library change only on item count

The library will also be updated when the number of children remains the same before and after scanning. For example, if one video file is removed and replaced with another version, we still need to remove the old one in this case.

Signed-off-by: gnattu <gnattuoc@me.com>
gnattu 1 год назад
Родитель
Сommit
588fb9e82b
1 измененных файлов с 3 добавлено и 4 удалено
  1. 3 4
      MediaBrowser.Controller/Entities/Folder.cs

+ 3 - 4
MediaBrowser.Controller/Entities/Folder.cs

@@ -421,13 +421,12 @@ namespace MediaBrowser.Controller.Entities
                     validChildren.Add(child);
                 }
 
+                // That's all the new and changed ones - now see if there are any that are missing
+                var itemsRemoved = currentChildren.Values.Except(validChildren).ToList();
                 var shouldRemove = !IsRoot || allowRemoveRoot;
                 // If it's an AggregateFolder, don't remove
-                if (shouldRemove && currentChildren.Count != validChildren.Count)
+                if (shouldRemove && itemsRemoved.Count > 0)
                 {
-                    // That's all the new and changed ones - now see if there are any that are missing
-                    var itemsRemoved = currentChildren.Values.Except(validChildren).ToList();
-
                     foreach (var item in itemsRemoved)
                     {
                         if (item.IsFileProtocol)