Skip to content

Commit f6aa122

Browse files
committed
Fixes issue where timesegments is locked up for max 50x segmentDuration when catching up to realtime.
1 parent db4c4a8 commit f6aa122

File tree

1 file changed

+4
-1
lines changed

1 file changed

+4
-1
lines changed

Tools/TestNetRewarder/TimeSegmenter.cs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,9 @@ private DateTime GetNewSegmentEnd()
5959
{
6060
if (IsRealtime) return latest + segmentSize;
6161
var segment = segmentSize * currentSegmentMult;
62-
return latest + segment;
62+
var end = latest + segment;
63+
if (end > DateTime.UtcNow) return DateTime.UtcNow + segmentSize;
64+
return end;
6365
}
6466

6567
private void HandleResponse(TimeSegmentResponse response)
@@ -87,6 +89,7 @@ private async Task<bool> WaitUntilTimeSegmentInPast(DateTime end)
8789
var now = DateTime.UtcNow;
8890
while (end > now)
8991
{
92+
currentSegmentMult = 1;
9093
var delay = (end - now) + TimeSpan.FromSeconds(3);
9194
await Task.Delay(delay, Program.CancellationToken);
9295
return true;

0 commit comments

Comments
 (0)