From 4e33363729162f81db9b6a61f6d68ca1a42d6a88 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8F=8C=E8=8D=89=E9=85=B8=E9=85=AF?= <17663689+kotori2@users.noreply.github.com> Date: Wed, 9 Feb 2022 23:35:26 +0800 Subject: [PATCH] Fix #1652 (#1655) --- .../java/org/lsposed/lspd/service/ConfigManager.java | 11 ++++++++--- .../org/lsposed/lspd/service/ObfuscationManager.java | 2 +- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/daemon/src/main/java/org/lsposed/lspd/service/ConfigManager.java b/daemon/src/main/java/org/lsposed/lspd/service/ConfigManager.java index bf4f3f97..f3518dd7 100644 --- a/daemon/src/main/java/org/lsposed/lspd/service/ConfigManager.java +++ b/daemon/src/main/java/org/lsposed/lspd/service/ConfigManager.java @@ -271,11 +271,16 @@ public class ConfigManager { } static ConfigManager getInstance() { + return getInstance(true); + } + + static ConfigManager getInstance(boolean needCached) { if (instance == null) instance = new ConfigManager(); - boolean needCached; - synchronized (instance.cacheHandler) { - needCached = instance.lastModuleCacheTime == 0 || instance.lastScopeCacheTime == 0; + if (needCached) { + synchronized (instance.cacheHandler) { + needCached = instance.lastModuleCacheTime == 0 || instance.lastScopeCacheTime == 0; + } } if (needCached) { if (PackageService.isAlive()) { diff --git a/daemon/src/main/java/org/lsposed/lspd/service/ObfuscationManager.java b/daemon/src/main/java/org/lsposed/lspd/service/ObfuscationManager.java index cf6d5e71..fde3226f 100644 --- a/daemon/src/main/java/org/lsposed/lspd/service/ObfuscationManager.java +++ b/daemon/src/main/java/org/lsposed/lspd/service/ObfuscationManager.java @@ -4,7 +4,7 @@ import android.os.SharedMemory; public class ObfuscationManager { static boolean enabled() { - return ConfigManager.getInstance().dexObfuscate(); + return ConfigManager.getInstance(false).dexObfuscate(); } static native void init();