diff --git a/ErsatzTV.Core/Scheduling/BlockScheduling/BlockPlayoutFillerBuilder.cs b/ErsatzTV.Core/Scheduling/BlockScheduling/BlockPlayoutFillerBuilder.cs index 6ac71e283..1f1773f38 100644 --- a/ErsatzTV.Core/Scheduling/BlockScheduling/BlockPlayoutFillerBuilder.cs +++ b/ErsatzTV.Core/Scheduling/BlockScheduling/BlockPlayoutFillerBuilder.cs @@ -65,12 +65,16 @@ public class BlockPlayoutFillerBuilder( var collectionEnumerators = new Dictionary(); + // history doesn't have an equivalent to "remove before" + // so for break content, let's remove all corresponding items that should be removed + var itemsForBreakContent = allItems.Where(x => x.FinishOffset >= removeBefore).ToList(); + var breakContentResult = await AddBreakContent( playout, referenceData, mode, collectionEnumerators, - allItems, + itemsForBreakContent, filteredExistingHistory, result.AddedHistory, cancellationToken); @@ -92,12 +96,16 @@ public class BlockPlayoutFillerBuilder( .ToList(); allItems.AddRange(result.AddedItems); + // history doesn't have an equivalent to "remove before" + // so for break content, let's remove all corresponding items that should be removed + itemsForBreakContent = allItems.Where(x => x.FinishOffset >= removeBefore).ToList(); + result = await AddDefaultFiller( playout, referenceData, result, collectionEnumerators, - allItems, + itemsForBreakContent, filteredExistingHistory, cancellationToken);