diff --git a/electrum/gui/qml/qedaemon.py b/electrum/gui/qml/qedaemon.py index f1f015ce0..70bd2684b 100644 --- a/electrum/gui/qml/qedaemon.py +++ b/electrum/gui/qml/qedaemon.py @@ -238,7 +238,7 @@ class QEDaemon(AuthMixin, QObject): self._loading = False self.loadingChanged.emit() - threading.Thread(target=load_wallet_task, daemon=True).start() + threading.Thread(target=load_wallet_task, daemon=False).start() @pyqtSlot() @pyqtSlot(str) diff --git a/electrum/json_db.py b/electrum/json_db.py index d9b7d0e17..38481575c 100644 --- a/electrum/json_db.py +++ b/electrum/json_db.py @@ -391,8 +391,7 @@ class JsonDB(Logger): @locked def _append_pending_changes(self): if threading.current_thread().daemon: - self.logger.warning('daemon thread cannot write db') - return + raise Exception('daemon thread cannot write db') if not self.pending_changes: self.logger.info('no pending changes') return @@ -405,8 +404,7 @@ class JsonDB(Logger): @profiler def _write(self): if threading.current_thread().daemon: - self.logger.warning('daemon thread cannot write db') - return + raise Exception('daemon thread cannot write db') if not self.modified(): return json_str = self.dump(human_readable=not self.storage.is_encrypted())