fix: Prevent time sync check on FREE frames

Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
This commit is contained in:
Chaos Rogers 2025-07-10 14:28:17 +01:00
parent 8d834b22fd
commit 18b71c6fa6

View file

@ -77,6 +77,17 @@ impl LtcState {
match frame.status.as_str() {
"LOCK" => {
self.lock_count += 1;
// Every 5 seconds, recompute whether HH:MM:SS matches local time
let now_secs = Utc::now().timestamp();
if now_secs - self.last_match_check >= 5 {
self.last_match_status = if frame.matches_system_time() {
"IN SYNC".into()
} else {
"OUT OF SYNC".into()
};
self.last_match_check = now_secs;
}
}
"FREE" => {
self.free_count += 1;
@ -86,17 +97,6 @@ impl LtcState {
_ => {}
}
// Every 5 seconds, recompute whether HH:MM:SS matches local time
let now_secs = Utc::now().timestamp();
if now_secs - self.last_match_check >= 5 {
self.last_match_status = if frame.matches_system_time() {
"IN SYNC".into()
} else {
"OUT OF SYNC".into()
};
self.last_match_check = now_secs;
}
self.latest = Some(frame);
}