mirror of
https://github.com/smittix/intercept.git
synced 2026-04-30 01:29:59 -07:00
fix: Resolve gpsd deadlock causing GPS connect to hang
start_gpsd_daemon() acquires _gpsd_process_lock then calls stop_gpsd_daemon() which tries to acquire the same non-reentrant Lock, causing an immediate deadlock. Changed to RLock so the same thread can re-enter the lock. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -490,7 +490,7 @@ def get_current_position() -> GPSPosition | None:
|
||||
# ============================================
|
||||
|
||||
_gpsd_process: 'subprocess.Popen | None' = None
|
||||
_gpsd_process_lock = threading.Lock()
|
||||
_gpsd_process_lock = threading.RLock()
|
||||
|
||||
|
||||
def detect_gps_devices() -> list[dict]:
|
||||
|
||||
Reference in New Issue
Block a user