diff options
| author | Cody Robibero <cody@robibe.ro> | 2026-08-10 18:28:22 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-08-10 18:28:22 -0400 |
| commit | 2a8d168796907f3946098d90d7cebc8bbac45ca8 (patch) | |
| tree | 49896438c95e278c17a4656cb01f8dad09eddcf2 /Emby.Server.Implementations/Library/LibraryManager.cs | |
| parent | 34cc90f5e285a0b896e07d0bc195e4cff768cb56 (diff) | |
| parent | e63c05137a236acc9fc09d69ebe3862449c43759 (diff) | |
Merge pull request #17579 from Shadowghost/fix-removal-notification
Fix missing ItemRemoved events and search fallback after access filtering
Diffstat (limited to 'Emby.Server.Implementations/Library/LibraryManager.cs')
| -rw-r--r-- | Emby.Server.Implementations/Library/LibraryManager.cs | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/Emby.Server.Implementations/Library/LibraryManager.cs b/Emby.Server.Implementations/Library/LibraryManager.cs index 0c7c411d0c..6a39b2177d 100644 --- a/Emby.Server.Implementations/Library/LibraryManager.cs +++ b/Emby.Server.Implementations/Library/LibraryManager.cs @@ -412,6 +412,13 @@ namespace Emby.Server.Implementations.Library } _persistenceService.DeleteItem([.. pathMaps.Select(f => f.Item.Id)]); + + // Evict the deleted items from the cache and announce each removal. + foreach (var (item, _, _) in pathMaps) + { + _cache.TryRemove(item.Id, out _); + ReportItemRemoved(item, item.GetOwner() ?? item.GetParent()); + } } public void DeleteItem(BaseItem item, DeleteOptions options, BaseItem parent, bool notifyParentItem) @@ -611,6 +618,12 @@ namespace Emby.Server.Implementations.Library folder.UserData = null; } + // Announce the descendants before the item itself. + foreach (var child in children) + { + ReportItemRemoved(child, item); + } + ReportItemRemoved(item, parent); } |
