From 491710679a737c7aa8f353f8a267620624d4f60d Mon Sep 17 00:00:00 2001 From: Max Lv Date: Thu, 9 Feb 2017 10:50:44 +0800 Subject: [PATCH] Fix #1111 --- .../src/main/scala/com/github/shadowsocks/utils/Parser.scala | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mobile/src/main/scala/com/github/shadowsocks/utils/Parser.scala b/mobile/src/main/scala/com/github/shadowsocks/utils/Parser.scala index a571bad6..2645a809 100644 --- a/mobile/src/main/scala/com/github/shadowsocks/utils/Parser.scala +++ b/mobile/src/main/scala/com/github/shadowsocks/utils/Parser.scala @@ -34,7 +34,7 @@ object Parser { pattern.findAllMatchIn(if (data == null) "" else data).map(m => { val uri = Uri.parse(m.matched) uri.getUserInfo match { - case null => uri.getHost match { + case null => new String(Base64.decode(uri.getHost, Base64.NO_PADDING), "UTF-8") match { case legacyPattern(_, method, password, host, port) => // legacy uri val profile = new Profile profile.method = method.toLowerCase @@ -49,7 +49,7 @@ object Parser { null } case userInfo => - new String(Base64.decode(userInfo, Base64.NO_PADDING | Base64.NO_WRAP | Base64.URL_SAFE)) match { + new String(Base64.decode(userInfo, Base64.NO_PADDING | Base64.NO_WRAP | Base64.URL_SAFE), "UTF-8") match { case userInfoPattern(method, password) => val profile = new Profile profile.method = method