From 93f033dfcbf67d7afdfb7539a51083aba6785e3e Mon Sep 17 00:00:00 2001 From: ianshih22856 <114518748+ianshih22856@users.noreply.github.com> Date: Fri, 17 Jan 2025 14:44:38 -0800 Subject: [PATCH] Update bin.go Included functionality for checking and resetting updates to check if LZR is in an infinite loop. --- bin/bin.go | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/bin/bin.go b/bin/bin.go index fb3aa16..7719a99 100644 --- a/bin/bin.go +++ b/bin/bin.go @@ -81,7 +81,15 @@ func LZRMain() { var intervalLoop = options.Timeout*lzr.NumHandshakes()*2 go func() { for { - time.Sleep(time.Duration(intervalLoop)*time.Second) + startTime := time.Now() + for time.Since(startTime) < time.Duration(intervalLoop)*time.Second { + if (ipMeta.HasUpdates()) { + startTime = time.Now() + ipMeta.ResetUpdates() + continue + } + time.Sleep(time.Duration(intervalLoop)*time.Millisecond) + } if (ipMetaSize == ipMeta.Count()) { fmt.Fprintln(os.Stderr,"Infinite Loop, Breaking.") infiniteLoop = true