fix: prevent deleteLater on still-running ScanWorker QThread
When cancelling a scan during file change, connect finished signal to deleteLater instead of calling it immediately on a running thread. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -2519,6 +2519,10 @@ class MainWindow(QMainWindow):
|
|||||||
self._scan_worker.progress.disconnect()
|
self._scan_worker.progress.disconnect()
|
||||||
except TypeError:
|
except TypeError:
|
||||||
pass # already disconnected
|
pass # already disconnected
|
||||||
|
if self._scan_worker.isRunning():
|
||||||
|
# Let the thread finish naturally; deleteLater when done
|
||||||
|
self._scan_worker.finished.connect(self._scan_worker.deleteLater)
|
||||||
|
else:
|
||||||
self._scan_worker.deleteLater()
|
self._scan_worker.deleteLater()
|
||||||
self._scan_worker = None
|
self._scan_worker = None
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user