diff --git a/CHANGELOG.md b/CHANGELOG.md index 591702233..490c99345 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). - This only happened with fixed start schedule items following a schedule item with tail or fallback filler - Fix NFO reader bug that caused inaccurate warning messages about invalid XML and incomplete metadata - Fix reverse proxy SSL termination support by supporting `X-Forwarded-Proto` header +- Fix automatic playout reset scheduling + - Playouts would reset every 30 minutes between midnight and the configured time, instead of only at the configured time ### Added - Add music video credits template system diff --git a/ErsatzTV/Services/SchedulerService.cs b/ErsatzTV/Services/SchedulerService.cs index ff4059e3f..a1dbf60f9 100644 --- a/ErsatzTV/Services/SchedulerService.cs +++ b/ErsatzTV/Services/SchedulerService.cs @@ -138,8 +138,10 @@ public class SchedulerService : BackgroundService foreach (Playout playout in playouts.OrderBy(p => decimal.Parse(p.Channel.Number))) { - if (DateTime.Now.Subtract(DateTime.Today.Add(playout.DailyRebuildTime ?? TimeSpan.FromDays(7))) < - TimeSpan.FromMinutes(5)) + DateTime now = DateTime.Now; + DateTime target = DateTime.Today.Add(playout.DailyRebuildTime ?? TimeSpan.FromDays(7)); + // check absolute diff + if (now.Subtract(target).Duration() < TimeSpan.FromMinutes(5)) { await _workerChannel.WriteAsync( new BuildPlayout(playout.Id, PlayoutBuildMode.Reset),