allow client daemon to be launched in the foreground (fix #1873)
This commit is contained in:
13
electrum
13
electrum
@@ -342,14 +342,15 @@ if __name__ == '__main__':
|
|||||||
|
|
||||||
elif cmdname == 'daemon':
|
elif cmdname == 'daemon':
|
||||||
subcommand = config.get('subcommand')
|
subcommand = config.get('subcommand')
|
||||||
assert subcommand in ['start', 'stop', 'status']
|
assert subcommand in [None, 'start', 'stop', 'status']
|
||||||
if subcommand == 'start':
|
if subcommand in [None, 'start']:
|
||||||
fd, server = daemon.get_fd_or_server(config)
|
fd, server = daemon.get_fd_or_server(config)
|
||||||
if fd is not None:
|
if fd is not None:
|
||||||
pid = os.fork()
|
if subcommand == 'start':
|
||||||
if pid:
|
pid = os.fork()
|
||||||
print_stderr("starting daemon (PID %d)" % pid)
|
if pid:
|
||||||
sys.exit(0)
|
print_stderr("starting daemon (PID %d)" % pid)
|
||||||
|
sys.exit(0)
|
||||||
init_plugins(config, 'cmdline')
|
init_plugins(config, 'cmdline')
|
||||||
d = daemon.Daemon(config, fd)
|
d = daemon.Daemon(config, fd)
|
||||||
d.start()
|
d.start()
|
||||||
|
|||||||
@@ -762,7 +762,7 @@ def get_parser():
|
|||||||
add_network_options(parser_gui)
|
add_network_options(parser_gui)
|
||||||
# daemon
|
# daemon
|
||||||
parser_daemon = subparsers.add_parser('daemon', parents=[parent_parser], help="Run 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)
|
#parser_daemon.set_defaults(func=run_daemon)
|
||||||
add_network_options(parser_daemon)
|
add_network_options(parser_daemon)
|
||||||
# commands
|
# commands
|
||||||
|
|||||||
@@ -147,8 +147,8 @@ class Daemon(DaemonThread):
|
|||||||
|
|
||||||
def run_daemon(self, config):
|
def run_daemon(self, config):
|
||||||
sub = config.get('subcommand')
|
sub = config.get('subcommand')
|
||||||
assert sub in ['start', 'stop', 'status']
|
assert sub in [None, 'start', 'stop', 'status']
|
||||||
if sub == 'start':
|
if sub in [None, 'start']:
|
||||||
response = "Daemon already running"
|
response = "Daemon already running"
|
||||||
elif sub == 'status':
|
elif sub == 'status':
|
||||||
if self.network:
|
if self.network:
|
||||||
|
|||||||
Reference in New Issue
Block a user