From cf12087e214a24cd29a14472f7882c7c88315609 Mon Sep 17 00:00:00 2001 From: vvb2060 Date: Tue, 6 May 2025 15:03:32 +0000 Subject: [PATCH] app: disable multiArch --- app/core/src/main/AndroidManifest.xml | 1 - .../magisk/core/tasks/MagiskInstaller.kt | 15 +++++++++------ 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/app/core/src/main/AndroidManifest.xml b/app/core/src/main/AndroidManifest.xml index fdcaa874b..35f228413 100644 --- a/app/core/src/main/AndroidManifest.xml +++ b/app/core/src/main/AndroidManifest.xml @@ -14,7 +14,6 @@ diff --git a/app/core/src/main/java/com/topjohnwu/magisk/core/tasks/MagiskInstaller.kt b/app/core/src/main/java/com/topjohnwu/magisk/core/tasks/MagiskInstaller.kt index e2f270059..507fb4185 100644 --- a/app/core/src/main/java/com/topjohnwu/magisk/core/tasks/MagiskInstaller.kt +++ b/app/core/src/main/java/com/topjohnwu/magisk/core/tasks/MagiskInstaller.kt @@ -132,7 +132,6 @@ abstract class MagiskInstallImpl protected constructor( if (entry != null) { val magisk32 = File(installDir, "magisk32") zf.getInputStream(entry).writeTo(magisk32) - magisk32.setExecutable(true) } } } @@ -147,11 +146,15 @@ abstract class MagiskInstallImpl protected constructor( Os.symlink(lib.path, "$installDir/$name") } - // Also symlink magisk32 on 64-bit devices that supports 32-bit - val lib32 = info.javaClass.getDeclaredField("secondaryNativeLibraryDir") - .get(info) as String? - if (lib32 != null) { - Os.symlink("$lib32/libmagisk.so", "$installDir/magisk32"); + // Also extract magisk32 on 64-bit devices that supports 32-bit + val abi32 = Const.CPU_ABI_32 + if (Process.is64Bit() && abi32 != null) { + val name = "lib/$abi32/libmagisk.so" + val entry = javaClass.classLoader!!.getResourceAsStream(name) + if (entry != null) { + val magisk32 = File(installDir, "magisk32") + entry.writeTo(magisk32) + } } }