Commit 3dba9663 authored by Max Lv's avatar Max Lv

fix two potential FCs

parent c9a7dc8d
...@@ -61,6 +61,7 @@ import com.nostra13.universalimageloader.core.{DisplayImageOptions, ImageLoader, ...@@ -61,6 +61,7 @@ import com.nostra13.universalimageloader.core.{DisplayImageOptions, ImageLoader,
import com.nostra13.universalimageloader.core.display.FadeInBitmapDisplayer import com.nostra13.universalimageloader.core.display.FadeInBitmapDisplayer
import com.github.shadowsocks.utils.{Utils, Scheme, Key} import com.github.shadowsocks.utils.{Utils, Scheme, Key}
import scala.concurrent.ops._
import scala.language.implicitConversions import scala.language.implicitConversions
case class ProxiedApp(uid: Int, name: String, packageName: String, var proxied: Boolean) case class ProxiedApp(uid: Int, name: String, packageName: String, var proxied: Boolean)
...@@ -245,18 +246,17 @@ class AppManager extends Activity with OnCheckedChangeListener with OnClickListe ...@@ -245,18 +246,17 @@ class AppManager extends Activity with OnCheckedChangeListener with OnClickListe
} }
}) })
bypassSwitch.setChecked(prefs.getBoolean(Key.isBypassApps, false)) bypassSwitch.setChecked(prefs.getBoolean(Key.isBypassApps, false))
appListView = findViewById(R.id.applistview).asInstanceOf[ListView]
} }
protected override def onResume() { protected override def onResume() {
super.onResume() super.onResume()
new Thread { spawn {
override def run() { handler.post(loadStartRunnable)
handler.post(loadStartRunnable) if (!appsLoaded) loadApps()
appListView = findViewById(R.id.applistview).asInstanceOf[ListView] handler.post(loadFinishRunnable)
if (!appsLoaded) loadApps() }
handler.post(loadFinishRunnable)
}
}.start()
} }
def saveAppSettings(context: Context) { def saveAppSettings(context: Context) {
......
...@@ -181,20 +181,24 @@ object Utils { ...@@ -181,20 +181,24 @@ object Utils {
} }
def resolve(host: String, addrType: Int): Option[String] = { def resolve(host: String, addrType: Int): Option[String] = {
val lookup = new Lookup(host, addrType) try {
val resolver = new SimpleResolver("114.114.114.114") val lookup = new Lookup(host, addrType)
resolver.setTimeout(5) val resolver = new SimpleResolver("114.114.114.114")
lookup.setResolver(resolver) resolver.setTimeout(5)
val result = lookup.run() lookup.setResolver(resolver)
if (result == null) return None val result = lookup.run()
val records = scala.util.Random.shuffle(result.toList) if (result == null) return None
for (r <- records) { val records = scala.util.Random.shuffle(result.toList)
addrType match { for (r <- records) {
case Type.A => addrType match {
return Some(r.asInstanceOf[ARecord].getAddress.getHostAddress) case Type.A =>
case Type.AAAA => return Some(r.asInstanceOf[ARecord].getAddress.getHostAddress)
return Some(r.asInstanceOf[AAAARecord].getAddress.getHostAddress) case Type.AAAA =>
return Some(r.asInstanceOf[AAAARecord].getAddress.getHostAddress)
}
} }
} catch {
case e: Exception => None
} }
None None
} }
......
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