mirror of
https://github.com/jellyfin/jellyfin.git
synced 2025-09-29 15:31:04 -04:00
Fix collections one-off (#14814)
This commit is contained in:
parent
7dab62616f
commit
897975fc57
@ -1336,19 +1336,20 @@ namespace MediaBrowser.Controller.Entities
|
|||||||
var limit = query.Limit > 0 ? query.Limit : int.MaxValue;
|
var limit = query.Limit > 0 ? query.Limit : int.MaxValue;
|
||||||
query.Limit = 0;
|
query.Limit = 0;
|
||||||
|
|
||||||
var visibileChildren = children
|
var visibleChildren = children
|
||||||
.Where(e => e.IsVisible(user))
|
.Where(e => e.IsVisible(user))
|
||||||
.ToArray();
|
.ToArray();
|
||||||
|
|
||||||
var realChildren = visibileChildren
|
var realChildren = visibleChildren
|
||||||
.Where(e => query is null || UserViewBuilder.FilterItem(e, query))
|
.Where(e => query is null || UserViewBuilder.FilterItem(e, query))
|
||||||
.ToArray();
|
.ToArray();
|
||||||
var childCount = realChildren.Length;
|
var childCount = realChildren.Length;
|
||||||
if (result.Count < limit)
|
if (result.Count < limit)
|
||||||
{
|
{
|
||||||
|
var remainingCount = (int)(limit - result.Count);
|
||||||
foreach (var child in realChildren
|
foreach (var child in realChildren
|
||||||
.Skip(query.StartIndex ?? 0)
|
.Skip(query.StartIndex ?? 0)
|
||||||
.TakeWhile(e => limit > result.Count))
|
.Take(remainingCount))
|
||||||
{
|
{
|
||||||
result[child.Id] = child;
|
result[child.Id] = child;
|
||||||
}
|
}
|
||||||
@ -1356,7 +1357,7 @@ namespace MediaBrowser.Controller.Entities
|
|||||||
|
|
||||||
if (recursive)
|
if (recursive)
|
||||||
{
|
{
|
||||||
foreach (var child in visibileChildren
|
foreach (var child in visibleChildren
|
||||||
.Where(e => e.IsFolder)
|
.Where(e => e.IsFolder)
|
||||||
.OfType<Folder>())
|
.OfType<Folder>())
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user