Revert limit hack (#14820)

This commit is contained in:
JPVenson 2025-09-20 15:19:26 +02:00 committed by GitHub
parent 0949212993
commit 59f77c24c9
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -1333,8 +1333,8 @@ namespace MediaBrowser.Controller.Entities
private int AddChildrenFromCollection(IEnumerable<BaseItem> children, User user, bool includeLinkedChildren, Dictionary<Guid, BaseItem> result, bool recursive, InternalItemsQuery query, HashSet<Folder> visitedFolders)
{
query ??= new InternalItemsQuery();
var limit = query.Limit;
query.Limit = 100; // this is a bit of a dirty hack thats in favor of specifically the webUI as it does not show more then +99 elements in its badges so there is no point in reading more then that.
var limit = query.Limit > 0 ? query.Limit : int.MaxValue;
query.Limit = 0;
var visibileChildren = children
.Where(e => e.IsVisible(user))
@ -1343,12 +1343,12 @@ namespace MediaBrowser.Controller.Entities
var realChildren = visibileChildren
.Where(e => query is null || UserViewBuilder.FilterItem(e, query))
.ToArray();
var childCount = realChildren.Count();
if (result.Count < query.Limit)
var childCount = realChildren.Length;
if (result.Count < limit)
{
foreach (var child in realChildren
.Skip(query.StartIndex ?? 0)
.TakeWhile(e => query.Limit >= result.Count))
.TakeWhile(e => limit > result.Count))
{
result[child.Id] = child;
}