Browse Source

jsondb: raise an exception if a daemon thread attempts to write

master
ThomasV 2 years ago
parent
commit
98cecb305e
  1. 2
      electrum/gui/qml/qedaemon.py
  2. 6
      electrum/json_db.py

2
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)

6
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())

Loading…
Cancel
Save