URI: 
       tfollow-up on SingleConfig - electrum - Electrum Bitcoin wallet
  HTML git clone https://git.parazyd.org/electrum
   DIR Log
   DIR Files
   DIR Refs
   DIR Submodules
       ---
   DIR commit a43be6657defe92631872d401fa0a940b680a540
   DIR parent 1a080639288de6a4237a47e2f97b8b608f695aea
  HTML Author: ThomasV <thomasv@electrum.org>
       Date:   Tue, 10 Sep 2019 17:14:25 +0200
       
       follow-up on SingleConfig
       
       Diffstat:
         M electrum/daemon.py                  |       5 ++---
         M run_electrum                        |      15 +++++++--------
       
       2 files changed, 9 insertions(+), 11 deletions(-)
       ---
   DIR diff --git a/electrum/daemon.py b/electrum/daemon.py
       t@@ -363,11 +363,10 @@ class Daemon(Logger):
                return True
        
            async def gui(self, config_options):
       -        config = SimpleConfig(config_options)
                if self.gui_object:
                    if hasattr(self.gui_object, 'new_window'):
       -                path = config.get_wallet_path(use_gui_last_wallet=True)
       -                self.gui_object.new_window(path, config.get('url'))
       +                path = self.config.get_wallet_path(use_gui_last_wallet=True)
       +                self.gui_object.new_window(path, config_options.get('url'))
                        response = "ok"
                    else:
                        response = "error: current GUI does not support multiple windows"
   DIR diff --git a/run_electrum b/run_electrum
       t@@ -106,8 +106,7 @@ def prompt_password(prompt, confirm=True):
            return password
        
        
       -def init_cmdline(config_options, server):
       -    config = SimpleConfig(config_options)
       +def init_cmdline(config_options, wallet_path, server):
            cmdname = config.get('cmd')
            cmd = known_commands[cmdname]
        
       t@@ -122,7 +121,7 @@ def init_cmdline(config_options, server):
                cmd.requires_network = True
        
            # instantiate wallet for command-line
       -    storage = WalletStorage(config.get_wallet_path())
       +    storage = WalletStorage(wallet_path)
        
            if cmd.requires_wallet and not storage.file_exists():
                print_msg("Error: Wallet file not found.")
       t@@ -324,9 +323,8 @@ if __name__ == '__main__':
                if not uri.startswith('bitcoin:'):
                    print_stderr('unknown command:', uri)
                    sys.exit(1)
       -        config_options['url'] = uri
        
       -    # todo: defer this to gui
       +    # singleton
            config = SimpleConfig(config_options)
        
            if config.get('testnet'):
       t@@ -392,9 +390,10 @@ if __name__ == '__main__':
            else:
                # command line
                cmd = known_commands[cmdname]
       +        wallet_path = config.get_wallet_path()
                if not config.get('offline'):
       -            init_cmdline(config_options, True)
       -            timeout = config_options.get('timeout', 60)
       +            init_cmdline(config_options, wallet_path, True)
       +            timeout = config.get('timeout', 60)
                    if timeout: timeout = int(timeout)
                    try:
                        result = daemon.request(config, 'run_cmdline', (config_options,), timeout)
       t@@ -410,7 +409,7 @@ if __name__ == '__main__':
                    if cmd.requires_network:
                        print_msg("This command cannot be run offline")
                        sys_exit(1)
       -            init_cmdline(config_options, False)
       +            init_cmdline(config_options, wallet_path, False)
                    plugins = init_plugins(config, 'cmdline')
                    coro = run_offline_command(config, config_options, plugins)
                    fut = asyncio.run_coroutine_threadsafe(coro, loop)