1
0
mirror of https://github.com/gryf/wicd.git synced 2025-12-31 11:02:33 +01:00

merged lp:~adamblackburn/wicd/1.6-return-101-if-no-strength to allow cards that don't report signal strength to work with Wicd's default settings

This commit is contained in:
Adam Blackburn
2009-06-20 19:25:10 -05:00
2 changed files with 15 additions and 2 deletions

View File

@@ -309,7 +309,13 @@ class WicdDaemon(dbus.service.Object):
if self.GetSignalDisplayType() == 1:
return (signal + " dBm")
else:
return (signal + "%")
try:
if int(signal) == 101:
return '??%'
else:
return (signal + "%")
except ValueError:
return (signal + "%")
@dbus.service.method('org.wicd.daemon')
def SetSuspend(self, val):

View File

@@ -1366,7 +1366,14 @@ class BaseWirelessInterface(BaseInterface):
(strength, max_strength) = (None, None)
if strength in ['', None]:
[(strength, max_strength)] = altstrength_pattern.findall(output)
try:
[(strength, max_strength)] = altstrength_pattern.findall(output)
except ValueError:
# if the pattern was unable to match anything
# we'll return 101, which will allow us to stay
# connected even though we don't know the strength
# it also allows us to tell if
return 101
if strength not in ['', None] and max_strength:
return (100 * int(strength) // int(max_strength))
elif strength not in ["", None]: