tdaemon: fix long-standing bug in status request - electrum - Electrum Bitcoin wallet (HTM) git clone https://git.parazyd.org/electrum (DIR) Log (DIR) Files (DIR) Refs (DIR) Submodules --- (DIR) commit f91f03b3d44c8e22931e1989e51b2489093940d3 (DIR) parent ec24087b5a7a010f7c098378983e949cf4c1177d (HTM) Author: Neil Booth <kyuupichan@gmail.com> Date: Sun, 31 Jan 2016 11:50:44 +0900 daemon: fix long-standing bug in status request Gracefully handle a status request when self.network is None Diffstat: M lib/daemon.py | 26 +++++++++++++++----------- 1 file changed, 15 insertions(+), 11 deletions(-) --- (DIR) diff --git a/lib/daemon.py b/lib/daemon.py t@@ -100,17 +100,21 @@ class Daemon(DaemonThread): if sub == 'start': response = "Daemon already running" elif sub == 'status': - p = self.network.get_parameters() - response = { - 'path': self.network.config.path, - 'server': p[0], - 'blockchain_height': self.network.get_local_height(), - 'server_height': self.network.get_server_height(), - 'nodes': self.network.get_interfaces(), - 'connected': self.network.is_connected(), - 'auto_connect': p[4], - 'wallets': dict([ (k, w.is_up_to_date()) for k, w in self.wallets.items()]), - } + if self.network: + p = self.network.get_parameters() + response = { + 'path': self.network.config.path, + 'server': p[0], + 'blockchain_height': self.network.get_local_height(), + 'server_height': self.network.get_server_height(), + 'nodes': self.network.get_interfaces(), + 'connected': self.network.is_connected(), + 'auto_connect': p[4], + 'wallets': {k: w.is_up_to_date() + for k, w in self.wallets.items()}, + } + else: + response = "Daemon offline" elif sub == 'stop': self.stop() response = "Daemon stopped"