Always encode server info

This commit is contained in:
Matt Martz 2015-05-17 19:50:05 -05:00
parent 51d0d88b96
commit 1e44e9e2f1
1 changed files with 3 additions and 20 deletions

View File

@ -633,16 +633,7 @@ def speedtest():
line = ('%(id)4s) %(sponsor)s (%(name)s, %(country)s) ' line = ('%(id)4s) %(sponsor)s (%(name)s, %(country)s) '
'[%(d)0.2f km]' % server) '[%(d)0.2f km]' % server)
serverList.append(line) serverList.append(line)
# Python 2.7 and newer seem to be ok with the resultant encoding
# from parsing the XML, but older versions have some issues.
# This block should detect whether we need to encode or not
try:
unicode()
print_('\n'.join(serverList).encode('utf-8', 'ignore')) print_('\n'.join(serverList).encode('utf-8', 'ignore'))
except NameError:
print_('\n'.join(serverList))
except IOError:
pass
sys.exit(0) sys.exit(0)
else: else:
servers = closestServers(config['client']) servers = closestServers(config['client'])
@ -710,16 +701,8 @@ def speedtest():
best = getBestServer(servers) best = getBestServer(servers)
if not args.simple: if not args.simple:
# Python 2.7 and newer seem to be ok with the resultant encoding
# from parsing the XML, but older versions have some issues.
# This block should detect whether we need to encode or not
try:
unicode()
print_(('Hosted by %(sponsor)s (%(name)s) [%(d)0.2f km]: ' print_(('Hosted by %(sponsor)s (%(name)s) [%(d)0.2f km]: '
'%(latency)s ms' % best).encode('utf-8', 'ignore')) '%(latency)s ms' % best).encode('utf-8', 'ignore'))
except NameError:
print_('Hosted by %(sponsor)s (%(name)s) [%(d)0.2f km]: '
'%(latency)s ms' % best)
else: else:
print_('Ping: %(latency)s ms' % best) print_('Ping: %(latency)s ms' % best)