diff --git a/ErsatzTV.Core/Scheduling/BlockScheduling/BlockPlayoutFillerBuilder.cs b/ErsatzTV.Core/Scheduling/BlockScheduling/BlockPlayoutFillerBuilder.cs index fde5b3575..3b75bf043 100644 --- a/ErsatzTV.Core/Scheduling/BlockScheduling/BlockPlayoutFillerBuilder.cs +++ b/ErsatzTV.Core/Scheduling/BlockScheduling/BlockPlayoutFillerBuilder.cs @@ -27,11 +27,13 @@ public class BlockPlayoutFillerBuilder( PlayoutBuildMode mode, CancellationToken cancellationToken) { + var allItems = referenceData.ExistingItems.Append(result.AddedItems).ToList(); + if (mode is PlayoutBuildMode.Reset) { // remove all playout items with type filler // except block items that are hidden from the guide (guide mode) - var toRemove = result.AddedItems + var toRemove = allItems .Where(pi => pi.FillerKind is not FillerKind.None and not FillerKind.GuideMode) .ToList(); foreach (PlayoutItem playoutItem in toRemove) @@ -43,7 +45,7 @@ public class BlockPlayoutFillerBuilder( var collectionEnumerators = new Dictionary(); // find all unscheduled periods - var queue = new Queue(result.AddedItems); + var queue = new Queue(allItems); while (queue.Count > 1) { PlayoutItem one = queue.Dequeue(); @@ -81,7 +83,7 @@ public class BlockPlayoutFillerBuilder( collectionItems, start, playout.Seed, - result.AddedHistory, + referenceData.PlayoutHistory.Append(result.AddedHistory).ToList(), deco, historyKey);