Skip to content

v1.5.0 — Fix Qt cross-thread segfault on start/stop

Choose a tag to compare

@kotobuki09 kotobuki09 released this 22 Mar 14:27
· 14 commits to main since this release

What's New in v1.5.0

Bug Fix: Qt cross-thread segfault on Start/Stop

Fixed a crash (Segmentation fault) that occurred when starting or stopping listening via the system tray menu or keyboard hotkey.

Root Cause: The pystray tray callbacks and keyboard hotkey library run on background threads. Directly calling Qt widget mutation functions (QLabel.setText()) from these threads violated Qt's thread-safety model, causing a QObject: Cannot create children for a parent that is in a different thread crash.

Fix: Extended the _Bridge(QObject) class with two new pyqtSignal entries (start_listening, stop_listening). All background-thread entry points now emit through the bridge so Qt widget manipulation always happens on the main thread's event loop.