summaryrefslogtreecommitdiffstats
path: root/twrp-functions.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'twrp-functions.cpp')
-rwxr-xr-xtwrp-functions.cpp19
1 files changed, 19 insertions, 0 deletions
diff --git a/twrp-functions.cpp b/twrp-functions.cpp
index 5b618e2ac..9034a5013 100755
--- a/twrp-functions.cpp
+++ b/twrp-functions.cpp
@@ -1228,4 +1228,23 @@ void TWFunc::check_selinux_support() {
}
}
}
+
+bool TWFunc::Is_TWRP_App_In_System() {
+ if (PartitionManager.Mount_By_Path(PartitionManager.Get_Android_Root_Path(), false)) {
+ string base_path = PartitionManager.Get_Android_Root_Path();
+ if (TWFunc::Path_Exists(PartitionManager.Get_Android_Root_Path() + "/system"))
+ base_path += "/system"; // For devices with system as a root file system (e.g. Pixel)
+ string install_path = base_path + "/priv-app";
+ if (!TWFunc::Path_Exists(install_path))
+ install_path = base_path + "/app";
+ install_path += "/twrpapp";
+ if (TWFunc::Path_Exists(install_path)) {
+ LOGINFO("App found at '%s'\n", install_path.c_str());
+ DataManager::SetValue("tw_app_installed_in_system", 1);
+ return true;
+ }
+ }
+ DataManager::SetValue("tw_app_installed_in_system", 0);
+ return false;
+}
#endif // ndef BUILD_TWRPTAR_MAIN