User agent parser fix
This commit is contained in:
parent
ca11852632
commit
d625659cc6
|
@ -707,14 +707,24 @@ class receiveDataThread(threading.Thread):
|
||||||
useragent = data[readPosition:readPosition + useragentLength]
|
useragent = data[readPosition:readPosition + useragentLength]
|
||||||
|
|
||||||
# version check
|
# version check
|
||||||
userAgentName, userAgentVersion = useragent[1:-1].split(":")
|
try:
|
||||||
|
userAgentName, userAgentVersion = useragent[1:-1].split(":", 2)
|
||||||
|
except:
|
||||||
|
userAgentName = useragent
|
||||||
|
userAgentVersion = "0.0.0"
|
||||||
if userAgentName == "PyBitmessage":
|
if userAgentName == "PyBitmessage":
|
||||||
myVersion = [int(n) for n in shared.softwareVersion.split(".")]
|
myVersion = [int(n) for n in shared.softwareVersion.split(".")]
|
||||||
|
try:
|
||||||
remoteVersion = [int(n) for n in userAgentVersion.split(".")]
|
remoteVersion = [int(n) for n in userAgentVersion.split(".")]
|
||||||
|
except:
|
||||||
|
remoteVersion = 0
|
||||||
# remote is newer, but do not cross between stable and unstable
|
# remote is newer, but do not cross between stable and unstable
|
||||||
|
try:
|
||||||
if cmp(remoteVersion, myVersion) > 0 and \
|
if cmp(remoteVersion, myVersion) > 0 and \
|
||||||
(myVersion[1] % 2 == remoteVersion[1] % 2):
|
(myVersion[1] % 2 == remoteVersion[1] % 2):
|
||||||
shared.UISignalQueue.put(('newVersionAvailable', remoteVersion))
|
shared.UISignalQueue.put(('newVersionAvailable', remoteVersion))
|
||||||
|
except:
|
||||||
|
pass
|
||||||
|
|
||||||
readPosition += useragentLength
|
readPosition += useragentLength
|
||||||
numberOfStreamsInVersionMessage, lengthOfNumberOfStreamsInVersionMessage = decodeVarint(
|
numberOfStreamsInVersionMessage, lengthOfNumberOfStreamsInVersionMessage = decodeVarint(
|
||||||
|
|
Reference in New Issue
Block a user