From a42d1223be110ecc5faa4fa04cdc33794d12ab5f Mon Sep 17 00:00:00 2001 From: LoveSy Date: Fri, 3 Sep 2021 02:17:53 +0800 Subject: [PATCH] [core] DO NOT call pm when pm is not yet fully ready (#1038) Fix #1034 --- .../main/java/org/lsposed/lspd/service/ServiceManager.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/core/src/main/java/org/lsposed/lspd/service/ServiceManager.java b/core/src/main/java/org/lsposed/lspd/service/ServiceManager.java index 048ca277..0d146e9c 100644 --- a/core/src/main/java/org/lsposed/lspd/service/ServiceManager.java +++ b/core/src/main/java/org/lsposed/lspd/service/ServiceManager.java @@ -94,6 +94,11 @@ public class ServiceManager { DdmHandleAppName.setAppName("lspd", 0); + // get config before package service is started + // otherwise getInstance will trigger module/scope cache + var configManager = ConfigManager.getInstance(); + // --- DO NOT call ConfigManager.getInstance later!!! --- + waitSystemService("package"); waitSystemService("activity"); waitSystemService(Context.USER_SERVICE); @@ -122,7 +127,7 @@ public class ServiceManager { }); // Force logging on boot, now let's see if we need to stop logging - if (!ConfigManager.getInstance().verboseLog()) { + if (!configManager.verboseLog()) { logcatService.stopVerbose(); }