URI: 
       tNetwork: Fix switch_to_interface (check that interface is connected) - electrum - Electrum Bitcoin wallet
  HTML git clone https://git.parazyd.org/electrum
   DIR Log
   DIR Files
   DIR Refs
   DIR Submodules
       ---
   DIR commit 6ea04e2d47e39332bae600c7c899ab3ae1b52a81
   DIR parent bcde4163314f3b3577f3c61300819ed927b21591
  HTML Author: ThomasV <thomasv@gitorious>
       Date:   Wed, 10 Jun 2015 18:24:57 +0200
       
       Network: Fix switch_to_interface (check that interface is connected)
       
       Diffstat:
         M lib/network.py                      |      24 ++++++++++++++----------
       
       1 file changed, 14 insertions(+), 10 deletions(-)
       ---
   DIR diff --git a/lib/network.py b/lib/network.py
       t@@ -358,18 +358,22 @@ class Network(util.DaemonThread):
                happen on receipt of the connection notification.  Do nothing
                if server already is our interface.'''
                self.default_server = server
       -        if server in self.interfaces:
       -            if self.interface != self.interfaces[server]:
       -                self.print_error("switching to", server)
       -                # stop any current interface in order to terminate subscriptions
       -                self.stop_interface()
       -                self.interface = self.interfaces[server]
       -                self.send_subscriptions()
       -                self.set_status('connected')
       -                self.notify('updated')
       -        else:
       +        if server not in self.interfaces:
                    self.print_error("starting %s; will switch once connected" % server)
                    self.start_interface(server)
       +            return
       +        i = self.interfaces[server]
       +        if not i.is_connected():
       +            # do nothing; we will switch once connected
       +            return
       +        if self.interface != i:
       +            self.print_error("switching to", server)
       +            # stop any current interface in order to terminate subscriptions
       +            self.stop_interface()
       +            self.interface = i
       +            self.send_subscriptions()
       +            self.set_status('connected')
       +            self.notify('updated')
        
            def stop_interface(self):
                if self.interface: