Merge pull request #1230 from kyuupichan/switch-random-if

Remove interfaces in one place only
This commit is contained in:
ThomasV 2015-05-22 08:13:14 +02:00
commit 0b201d98ab
1 changed files with 4 additions and 9 deletions

View File

@ -354,13 +354,9 @@ class Network(util.DaemonThread):
def switch_to_random_interface(self): def switch_to_random_interface(self):
while self.interfaces: if self.interfaces:
i = random.choice(self.interfaces.values()) server = random.choice(self.interfaces.keys())
if i.is_connected(): self.switch_to_interface(server)
self.switch_to_interface(i.server)
break
else:
self.remove_interface(i)
def switch_to_interface(self, server): def switch_to_interface(self, server):
'''Switch to server as our interface, it must be in self.interfaces''' '''Switch to server as our interface, it must be in self.interfaces'''
@ -508,7 +504,6 @@ class Network(util.DaemonThread):
# main interface # main interface
if not self.is_connected(): if not self.is_connected():
if self.config.get('auto_cycle'): if self.config.get('auto_cycle'):
if self.interfaces:
self.switch_to_random_interface() self.switch_to_random_interface()
else: else:
if self.default_server in self.interfaces.keys(): if self.default_server in self.interfaces.keys():