Commit 1ddde094 authored by Mygod's avatar Mygod

Fix a crash in Parser

parent ee7ff7d5
...@@ -47,7 +47,7 @@ object Parser { ...@@ -47,7 +47,7 @@ object Parser {
private val pattern = "(?i)ss://([A-Za-z0-9+-/=_]+)".r private val pattern = "(?i)ss://([A-Za-z0-9+-/=_]+)".r
private val decodedPattern = "(?i)^((.+?)(-auth)??:(.*)@(.+?):(\\d+?))$".r private val decodedPattern = "(?i)^((.+?)(-auth)??:(.*)@(.+?):(\\d+?))$".r
def findAll(data: CharSequence) = pattern.findAllMatchIn(data).map(m => try def findAll(data: CharSequence) = pattern.findAllMatchIn(if (data == null) "" else data).map(m => try
decodedPattern.findFirstMatchIn(new String(Base64.decode(m.group(1), Base64.NO_PADDING), "UTF-8")) match { decodedPattern.findFirstMatchIn(new String(Base64.decode(m.group(1), Base64.NO_PADDING), "UTF-8")) match {
case Some(ss) => case Some(ss) =>
val profile = new Profile val profile = new Profile
...@@ -60,9 +60,9 @@ object Parser { ...@@ -60,9 +60,9 @@ object Parser {
profile profile
case _ => null case _ => null
} }
catch { catch {
case ex: Exception => case ex: Exception =>
Log.e(TAG, "parser error: " + m.source, ex)// Ignore Log.e(TAG, "parser error: " + m.source, ex)// Ignore
null null
}).filter(_ != null) }).filter(_ != null)
} }
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment