From 2fc1c3aef1e7934efeb1125210f4b97dbbb17414 Mon Sep 17 00:00:00 2001
From: Ariver <shanghai3168@gmail.com>
Date: Wed, 03 Jun 2026 18:36:42 +0800
Subject: [PATCH] Fix engine status updates after model reload

---
 privatevoice.src/services/engine_service.go |   10 +++++++++-
 1 files changed, 9 insertions(+), 1 deletions(-)

diff --git a/privatevoice.src/services/engine_service.go b/privatevoice.src/services/engine_service.go
index d40c951..a5463a5 100755
--- a/privatevoice.src/services/engine_service.go
+++ b/privatevoice.src/services/engine_service.go
@@ -159,10 +159,18 @@
 
 func (s *EngineService) SetStatus(status, hardwareInfo, lastError string) {
 	s.mu.Lock()
-	defer s.mu.Unlock()
 	s.status = status
 	s.hardwareInfo = hardwareInfo
 	s.lastError = lastError
+	s.mu.Unlock()
+
+	if s.app != nil {
+		s.app.Event.Emit("engine:status", map[string]interface{}{
+			"status":       status,
+			"hardwareInfo": hardwareInfo,
+			"error":        lastError,
+		})
+	}
 }
 
 // DownloadModel downloads the ASR model with progress events.

--
Gitblit v1.9.3