Load Zygisk modules even if no magic mount is needed

Close #4767
This commit is contained in:
topjohnwu 2021-10-14 01:35:29 -07:00
parent c8ac6c07b0
commit b75ec09998

View File

@ -607,22 +607,21 @@ void magic_mount() {
inject_magisk_bins(system); inject_magisk_bins(system);
} }
if (system->is_empty()) if (!system->is_empty()) {
return; // Handle special read-only partitions
for (const char *part : { "/vendor", "/product", "/system_ext" }) {
// Handle special read-only partitions struct stat st;
for (const char *part : { "/vendor", "/product", "/system_ext" }) { if (lstat(part, &st) == 0 && S_ISDIR(st.st_mode)) {
struct stat st; if (auto old = system->extract(part + 1)) {
if (lstat(part, &st) == 0 && S_ISDIR(st.st_mode)) { auto new_node = new root_node(old);
if (auto old = system->extract(part + 1)) { root->insert(new_node);
auto new_node = new root_node(old); }
root->insert(new_node);
} }
} }
}
root->prepare(); root->prepare();
root->mount(); root->mount();
}
// Mount on top of modules to enable zygisk // Mount on top of modules to enable zygisk
if (zygisk_enabled) { if (zygisk_enabled) {