From 25e1dcf205cd14feafdd9b4cf6b7a66f253ba6d2 Mon Sep 17 00:00:00 2001 From: Solstice Date: Tue, 9 Jun 2026 00:17:02 -0700 Subject: fix: backend code review — atomic writes, lock ordering, validation MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src-tauri/src/timer.rs | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src-tauri/src/timer.rs') diff --git a/src-tauri/src/timer.rs b/src-tauri/src/timer.rs index 7e26ad8..44e5999 100644 --- a/src-tauri/src/timer.rs +++ b/src-tauri/src/timer.rs @@ -7,6 +7,10 @@ use tauri::{AppHandle, Emitter}; use crate::state::{TimerPhase, TimerState}; use crate::storage::{self, AppData}; +// LOCK ORDERING: When acquiring multiple locks, always take timer_state +// before app_data to prevent deadlock. Never acquire app_data first +// while timer_state is not held. + // ── Event payloads ────────────────────────────────────────────────────────── #[derive(Clone, Serialize)] -- cgit v1.3-2-g0d8e