diff options
| author | Bond-009 <bond.009@outlook.com> | 2026-06-17 20:45:52 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-06-17 20:45:52 +0200 |
| commit | ada11f56921e25c20fcb6760231b4c3fef0c7fdb (patch) | |
| tree | a541fd90d5cbf33357e94c1a0f51dd7b86e33b12 /MediaBrowser.Controller/Entities/UserRootFolder.cs | |
| parent | 5036bf7db0a44e7917f8930e9a894df3f6934d18 (diff) | |
| parent | a9dc8f6f742e71720aad2c402a08087f7a7d5368 (diff) | |
Always apply recursive when filters are requested (#17088)
Diffstat (limited to 'MediaBrowser.Controller/Entities/UserRootFolder.cs')
| -rw-r--r-- | MediaBrowser.Controller/Entities/UserRootFolder.cs | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/MediaBrowser.Controller/Entities/UserRootFolder.cs b/MediaBrowser.Controller/Entities/UserRootFolder.cs index deed3631b8..d5be997b84 100644 --- a/MediaBrowser.Controller/Entities/UserRootFolder.cs +++ b/MediaBrowser.Controller/Entities/UserRootFolder.cs @@ -69,8 +69,14 @@ namespace MediaBrowser.Controller.Entities protected override QueryResult<BaseItem> GetItemsInternal(InternalItemsQuery query) { - if (query.Recursive) + // The user root holds no items of its own - a plain listing returns the user's + // views. But a request carrying any filter is a search across the libraries, so + // resolve it through the recursive query path even when Recursive wasn't set; + // otherwise the filters would be silently dropped. Recursive is set so the + // downstream query (ancestor/top-parent scoping) treats it as a recursive search. + if (query.Recursive || query.HasFilters) { + query.Recursive = true; return QueryRecursive(query); } |
