From 8b7927a3c5831a11913400d158e57516a98f022e Mon Sep 17 00:00:00 2001 From: LordBaryhobal Date: Fri, 24 Oct 2025 19:03:49 +0200 Subject: [PATCH] fix: correctly shutdown QTimers --- src/recorder.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/recorder.py b/src/recorder.py index 1837ffb..d7c6e37 100644 --- a/src/recorder.py +++ b/src/recorder.py @@ -25,8 +25,7 @@ class RecorderClient(QObject): self.port: int = port self.socket: socket.socket = socket.socket( socket.AF_INET, socket.SOCK_STREAM) - self.timer: QTimer = QTimer(self) - self.timer.timeout.connect(self.poll_socket) + self.timer: Optional[QTimer] = None self.connected: bool = False @pyqtSlot() @@ -34,6 +33,8 @@ class RecorderClient(QObject): self.socket.connect((self.host, self.port)) self.socket.setblocking(False) self.connected = True + self.timer = QTimer(self) + self.timer.timeout.connect(self.poll_socket) self.timer.start(50) print("Connected to server") @@ -84,7 +85,9 @@ class RecorderClient(QObject): @pyqtSlot() def shutdown(self): print("Shutting down client") - self.timer.stop() + if self.timer is not None: + self.timer.stop() + self.timer = None self.connected = False self.socket.close()