From 2839978cc163e7db90c910fa5660ef9a0243e7e9 Mon Sep 17 00:00:00 2001 From: canyie Date: Wed, 11 Jan 2023 23:38:50 +0800 Subject: [PATCH] Use null oat dir in root service only --- .../java/com/topjohnwu/magisk/utils/DynamicClassLoader.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/app/shared/src/main/java/com/topjohnwu/magisk/utils/DynamicClassLoader.java b/app/shared/src/main/java/com/topjohnwu/magisk/utils/DynamicClassLoader.java index 42b6ba97f..1aa5a3938 100644 --- a/app/shared/src/main/java/com/topjohnwu/magisk/utils/DynamicClassLoader.java +++ b/app/shared/src/main/java/com/topjohnwu/magisk/utils/DynamicClassLoader.java @@ -1,5 +1,7 @@ package com.topjohnwu.magisk.utils; +import android.os.Process; + import java.io.File; import java.io.IOException; import java.net.URL; @@ -14,8 +16,8 @@ public class DynamicClassLoader extends BaseDexClassLoader { } public DynamicClassLoader(File apk, ClassLoader parent) { - // Set optimizedDirectory to null to bypass DexFile's security checks - super(apk.getPath(), null, null, parent); + // Set optimizedDirectory to null for RootService to bypass DexFile's security checks + super(apk.getPath(), Process.myUid() == 0 ? null : apk.getParentFile(), null, parent); } @Override