Merge pull request #1230 from kyuupichan/switch-random-if
Remove interfaces in one place only
This commit is contained in:
commit
0b201d98ab
|
@ -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,8 +504,7 @@ 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():
|
||||||
self.switch_to_interface(self.default_server)
|
self.switch_to_interface(self.default_server)
|
||||||
|
|
Loading…
Reference in New Issue