From 9ddf32971f99b7c8ee8455b3ac44a81523a1354a Mon Sep 17 00:00:00 2001 From: "Nathan.fooo" <86001920+appflowy@users.noreply.github.com> Date: Tue, 5 Mar 2024 15:21:45 +0800 Subject: [PATCH] fix: underflow (#370) --- libs/client-api/src/collab_sync/sync_control.rs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/libs/client-api/src/collab_sync/sync_control.rs b/libs/client-api/src/collab_sync/sync_control.rs index d790d3df..c7a5cc67 100644 --- a/libs/client-api/src/collab_sync/sync_control.rs +++ b/libs/client-api/src/collab_sync/sync_control.rs @@ -433,8 +433,13 @@ struct LastSyncTime { impl LastSyncTime { fn new() -> Self { + let now = Instant::now(); + let one_hour = Duration::from_secs(3600); + // Use checked_sub to safely attempt subtraction, falling back to 'now' if underflow would occur + let one_hour_ago = now.checked_sub(one_hour).unwrap_or(now); + LastSyncTime { - last_sync: Mutex::new(Instant::now() - Duration::from_secs(3600)), + last_sync: Mutex::new(one_hour_ago), } }