Commit cadab127 authored by topjohnwu's avatar topjohnwu

Prevent root tasks if no root access

parent 742055c4
...@@ -144,8 +144,12 @@ public class MainActivity extends AppCompatActivity ...@@ -144,8 +144,12 @@ public class MainActivity extends AppCompatActivity
Menu menu = navigationView.getMenu(); Menu menu = navigationView.getMenu();
menu.findItem(R.id.magiskhide).setVisible(StatusFragment.magiskVersion > 0 && menu.findItem(R.id.magiskhide).setVisible(StatusFragment.magiskVersion > 0 &&
prefs.getBoolean("magiskhide", false) && Shell.rootAccess()); prefs.getBoolean("magiskhide", false) && Shell.rootAccess());
menu.findItem(R.id.modules).setVisible(StatusFragment.magiskVersion > 0); menu.findItem(R.id.modules).setVisible(StatusFragment.magiskVersion > 0 &&
menu.findItem(R.id.downloads).setVisible(StatusFragment.magiskVersion > 0); Shell.rootAccess());
menu.findItem(R.id.downloads).setVisible(StatusFragment.magiskVersion > 0 &&
Shell.rootAccess());
menu.findItem(R.id.log).setVisible(Shell.rootAccess());
menu.findItem(R.id.install).setVisible(Shell.rootAccess());
} }
public void navigate(final int itemId) { public void navigate(final int itemId) {
......
...@@ -36,6 +36,7 @@ public class Async { ...@@ -36,6 +36,7 @@ public class Async {
public abstract static class RootTask<Params, Progress, Result> extends AsyncTask<Params, Progress, Result> { public abstract static class RootTask<Params, Progress, Result> extends AsyncTask<Params, Progress, Result> {
@SafeVarargs @SafeVarargs
public final void exec(Params... params) { public final void exec(Params... params) {
if (!Shell.rootAccess()) return;
executeOnExecutor(AsyncTask.SERIAL_EXECUTOR, params); executeOnExecutor(AsyncTask.SERIAL_EXECUTOR, params);
} }
} }
...@@ -126,7 +127,6 @@ public class Async { ...@@ -126,7 +127,6 @@ public class Async {
@Override @Override
protected Void doInBackground(Void... voids) { protected Void doInBackground(Void... voids) {
if (! Shell.rootAccess()) return null;
MagiskHideFragment.hideList.clear(); MagiskHideFragment.hideList.clear();
MagiskHideFragment.fListApps.clear(); MagiskHideFragment.fListApps.clear();
MagiskHideFragment.listApps = pm.getInstalledApplications(PackageManager.GET_META_DATA); MagiskHideFragment.listApps = pm.getInstalledApplications(PackageManager.GET_META_DATA);
...@@ -240,7 +240,6 @@ public class Async { ...@@ -240,7 +240,6 @@ public class Async {
return -1; return -1;
} }
if (!unzipAndCheck()) return 0; if (!unzipAndCheck()) return 0;
if (Shell.rootAccess()) {
publishProgress(mContext.getString(R.string.zip_install_progress_msg, mFilename)); publishProgress(mContext.getString(R.string.zip_install_progress_msg, mFilename));
ret = Shell.su( ret = Shell.su(
"BOOTMODE=true sh " + mCachedFile.getParent() + "BOOTMODE=true sh " + mCachedFile.getParent() +
...@@ -255,12 +254,6 @@ public class Async { ...@@ -255,12 +254,6 @@ public class Async {
"rm -rf " + mCachedFile.getParent() + "/*", "rm -rf " + mCachedFile.getParent() + "/*",
"rm -rf " + TMP_FOLDER_PATH "rm -rf " + TMP_FOLDER_PATH
); );
} else {
if (mCachedFile != null && mCachedFile.exists() && !mCachedFile.delete()) {
Utils.removeItem(mCachedFile.getPath());
}
return -1;
}
if (Boolean.parseBoolean(ret.get(ret.size() - 1))) { if (Boolean.parseBoolean(ret.get(ret.size() - 1))) {
return 1; return 1;
} }
......
...@@ -74,11 +74,7 @@ public class Utils { ...@@ -74,11 +74,7 @@ public class Utils {
public static List<String> getModList(String path) { public static List<String> getModList(String path) {
List<String> ret; List<String> ret;
String command = "find " + path + " -type d -maxdepth 1 ! -name \"*.core\" ! -name \"*lost+found\" ! -name \"*magisk\""; String command = "find " + path + " -type d -maxdepth 1 ! -name \"*.core\" ! -name \"*lost+found\" ! -name \"*magisk\"";
if (Shell.rootAccess()) {
ret = Shell.su(command); ret = Shell.su(command);
} else {
ret = Shell.sh(command);
}
return ret; return ret;
} }
......
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