diff options
| author | Cody Robibero <cody@robibe.ro> | 2026-08-01 08:07:05 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-08-01 08:07:05 -0400 |
| commit | 030031dcff5bb5d11f88f7e6c4e2361b35c2cb7e (patch) | |
| tree | 49f015e5996fe6ddb2da9079a34137dc823cdf62 /MediaBrowser.Controller/Entities/UserViewBuilder.cs | |
| parent | 341c19bacebfeb4e957adfa75094c6a8febfc155 (diff) | |
| parent | d64e18b69a0a6089aab350f33464f362f09de942 (diff) | |
Merge pull request #17463 from Shadowghost/fix-unplayed-filter
Fix (Un)Played filter correctness and performance
Diffstat (limited to 'MediaBrowser.Controller/Entities/UserViewBuilder.cs')
| -rw-r--r-- | MediaBrowser.Controller/Entities/UserViewBuilder.cs | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/MediaBrowser.Controller/Entities/UserViewBuilder.cs b/MediaBrowser.Controller/Entities/UserViewBuilder.cs index 9ba103cc8b..aed11e5cc3 100644 --- a/MediaBrowser.Controller/Entities/UserViewBuilder.cs +++ b/MediaBrowser.Controller/Entities/UserViewBuilder.cs @@ -461,11 +461,12 @@ namespace MediaBrowser.Controller.Entities var counts = libraryManager.GetPlayedAndTotalCountBatch(folderIds, user); var isPlayedValue = query.IsPlayed.Value; - return itemList.Where(i => + return itemList.Where(item => { - if (i.IsFolder && counts.TryGetValue(i.Id, out var c)) + if (item is Folder) { - return (c.Total > 0 && c.Played == c.Total) == isPlayedValue; + var itemCount = counts.GetValueOrDefault(item.Id); + return (itemCount.Played >= itemCount.Total) == isPlayedValue; } return true; |
