Browse Source

allow client daemon to be launched in the foreground (fix #1873)

283
ThomasV 8 years ago
parent
commit
be15b76c9b
  1. 13
      electrum
  2. 2
      lib/commands.py
  3. 4
      lib/daemon.py

13
electrum

@ -342,14 +342,15 @@ if __name__ == '__main__':
elif cmdname == 'daemon':
subcommand = config.get('subcommand')
assert subcommand in ['start', 'stop', 'status']
if subcommand == 'start':
assert subcommand in [None, 'start', 'stop', 'status']
if subcommand in [None, 'start']:
fd, server = daemon.get_fd_or_server(config)
if fd is not None:
pid = os.fork()
if pid:
print_stderr("starting daemon (PID %d)" % pid)
sys.exit(0)
if subcommand == 'start':
pid = os.fork()
if pid:
print_stderr("starting daemon (PID %d)" % pid)
sys.exit(0)
init_plugins(config, 'cmdline')
d = daemon.Daemon(config, fd)
d.start()

2
lib/commands.py

@ -762,7 +762,7 @@ def get_parser():
add_network_options(parser_gui)
# daemon
parser_daemon = subparsers.add_parser('daemon', parents=[parent_parser], help="Run Daemon")
parser_daemon.add_argument("subcommand", choices=['start', 'status', 'stop'])
parser_daemon.add_argument("subcommand", choices=['start', 'status', 'stop'], nargs='?')
#parser_daemon.set_defaults(func=run_daemon)
add_network_options(parser_daemon)
# commands

4
lib/daemon.py

@ -147,8 +147,8 @@ class Daemon(DaemonThread):
def run_daemon(self, config):
sub = config.get('subcommand')
assert sub in ['start', 'stop', 'status']
if sub == 'start':
assert sub in [None, 'start', 'stop', 'status']
if sub in [None, 'start']:
response = "Daemon already running"
elif sub == 'status':
if self.network:

Loading…
Cancel
Save