URI: 
       tfix: network.interface can become None at any time - electrum - Electrum Bitcoin wallet
  HTML git clone https://git.parazyd.org/electrum
   DIR Log
   DIR Files
   DIR Refs
   DIR Submodules
       ---
   DIR commit 51ed8a998c0f80fe27a3c27c46e4ff12d875865b
   DIR parent f8dab46a4b0bd8c814ed0a04e968f1f24af92c96
  HTML Author: SomberNight <somber.night@protonmail.com>
       Date:   Mon, 25 Jun 2018 01:14:49 +0200
       
       fix: network.interface can become None at any time
       
       Diffstat:
         M gui/kivy/main_window.py             |       5 +++--
         M gui/qt/network_dialog.py            |       3 ++-
         M lib/synchronizer.py                 |       4 +++-
       
       3 files changed, 8 insertions(+), 4 deletions(-)
       ---
   DIR diff --git a/gui/kivy/main_window.py b/gui/kivy/main_window.py
       t@@ -639,8 +639,9 @@ class ElectrumWindow(App):
                chain = self.network.blockchain()
                self.blockchain_checkpoint = chain.get_checkpoint()
                self.blockchain_name = chain.get_name()
       -        if self.network.interface:
       -            self.server_host = self.network.interface.host
       +        interface = self.network.interface
       +        if interface:
       +            self.server_host = interface.host
        
            def on_network_event(self, event, *args):
                Logger.info('network event: '+ event)
   DIR diff --git a/gui/qt/network_dialog.py b/gui/qt/network_dialog.py
       t@@ -340,7 +340,8 @@ class NetworkChoiceLayout(object):
                self.server_port.setText(port)
                self.autoconnect_cb.setChecked(auto_connect)
        
       -        host = self.network.interface.host if self.network.interface else _('None')
       +        interface = self.network.interface
       +        host = interface.host if interface else _('None')
                self.server_label.setText(host)
        
                self.set_protocol(protocol)
   DIR diff --git a/lib/synchronizer.py b/lib/synchronizer.py
       t@@ -126,7 +126,9 @@ class Synchronizer(ThreadJob):
                tx_fees = dict(filter(lambda x:x[1] is not None, tx_fees))
                # Note if the server hasn't been patched to sort the items properly
                if hist != sorted(hist, key=lambda x:x[1]):
       -            self.network.interface.print_error("serving improperly sorted address histories")
       +            interface = self.network.interface
       +            # note: we don't actually know which interface was used if it was *just* changed
       +            if interface: interface.print_error("serving improperly sorted address histories")
                # Check that txids are unique
                if len(hashes) != len(result):
                    self.print_error("error: server history has non-unique txids: %s"% addr)