From cb8908e49db2ef2d706e3a60fb840583509392cc Mon Sep 17 00:00:00 2001 From: Max Lv Date: Sat, 3 Aug 2013 10:04:10 +0800 Subject: [PATCH] disable dns flush on sdk >= 17 without root --- .../scala/com/github/shadowsocks/Shadowsocks.scala | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/main/scala/com/github/shadowsocks/Shadowsocks.scala b/src/main/scala/com/github/shadowsocks/Shadowsocks.scala index 98e59b22..34f82c39 100644 --- a/src/main/scala/com/github/shadowsocks/Shadowsocks.scala +++ b/src/main/scala/com/github/shadowsocks/Shadowsocks.scala @@ -418,6 +418,7 @@ class Shadowsocks } override def onCreateOptionsMenu(menu: Menu): Boolean = { + val isRoot = status.getBoolean(Key.isRoot, false) menu .add(0, 0, 0, R.string.recovery) .setIcon(android.R.drawable.ic_menu_revert) @@ -426,10 +427,12 @@ class Shadowsocks .add(0, 1, 1, R.string.about) .setIcon(android.R.drawable.ic_menu_info_details) .setShowAsAction(MenuItem.SHOW_AS_ACTION_WITH_TEXT) - menu - .add(0, 2, 2, R.string.flush_dnscache) - .setIcon(android.R.drawable.ic_menu_revert) - .setShowAsAction(MenuItem.SHOW_AS_ACTION_WITH_TEXT) + if (isRoot || Build.VERSION.SDK_INT < 17) { + menu + .add(0, 2, 2, R.string.flush_dnscache) + .setIcon(android.R.drawable.ic_menu_revert) + .setShowAsAction(MenuItem.SHOW_AS_ACTION_WITH_TEXT) + } true }