You've already forked ReZygisk
mirror of
https://github.com/PerformanC/ReZygisk.git
synced 2025-09-06 06:37:01 +00:00
add: support for magic mount in KSU and APatch
This commit allows ReZygisk to u(n)mount mounted paths in KSU and APatch environments using magic mount.
This commit is contained in:
@@ -37,21 +37,30 @@ void revert_unmount_ksu() {
|
||||
ksu_loop = info.source;
|
||||
continue;
|
||||
}
|
||||
|
||||
// Unmount everything mounted to /data/adb
|
||||
if (info.target.starts_with("/data/adb")) {
|
||||
targets.emplace_back(info.target);
|
||||
}
|
||||
|
||||
// Unmount everything mounted to /data/adb
|
||||
if (info.root.starts_with("/adb/modules")) {
|
||||
targets.emplace_back(info.target);
|
||||
}
|
||||
|
||||
// Unmount ksu overlays
|
||||
if (info.type == "overlay"
|
||||
&& info.source == KSU_OVERLAY_SOURCE
|
||||
&& std::find(DEVICE_PARTITIONS.begin(), DEVICE_PARTITIONS.end(), info.target) != DEVICE_PARTITIONS.end()) {
|
||||
targets.emplace_back(info.target);
|
||||
}
|
||||
|
||||
// Unmount temp dir
|
||||
if (info.type == "tmpfs" && info.source == KSU_OVERLAY_SOURCE) {
|
||||
targets.emplace_back(info.target);
|
||||
}
|
||||
}
|
||||
|
||||
for (auto& info: parse_mount_info("self")) {
|
||||
// Unmount everything from ksu loop except ksu module dir
|
||||
if (info.source == ksu_loop && info.target != MODULE_DIR) {
|
||||
@@ -98,21 +107,30 @@ void revert_unmount_apatch() {
|
||||
ap_loop = info.source;
|
||||
continue;
|
||||
}
|
||||
|
||||
// Unmount everything mounted to /data/adb
|
||||
if (info.target.starts_with("/data/adb")) {
|
||||
targets.emplace_back(info.target);
|
||||
}
|
||||
|
||||
// Unmount everything mounted to /data/adb
|
||||
if (info.root.starts_with("/adb/modules")) {
|
||||
targets.emplace_back(info.target);
|
||||
}
|
||||
|
||||
// Unmount ksu overlays
|
||||
if (info.type == "overlay"
|
||||
&& info.source == AP_OVERLAY_SOURCE
|
||||
&& std::find(DEVICE_PARTITIONS.begin(), DEVICE_PARTITIONS.end(), info.target) != DEVICE_PARTITIONS.end()) {
|
||||
targets.emplace_back(info.target);
|
||||
}
|
||||
|
||||
// Unmount temp dir
|
||||
if (info.type == "tmpfs" && info.source == AP_OVERLAY_SOURCE) {
|
||||
targets.emplace_back(info.target);
|
||||
}
|
||||
}
|
||||
|
||||
for (auto& info: parse_mount_info("self")) {
|
||||
// Unmount everything from ksu loop except ksu module dir
|
||||
if (info.source == ap_loop && info.target != MODULE_DIR) {
|
||||
|
||||
Reference in New Issue
Block a user