diff --git a/app/src/main/java/org/lsposed/manager/util/ModuleUtil.java b/app/src/main/java/org/lsposed/manager/util/ModuleUtil.java index 9bd4b46a..c62a10e9 100644 --- a/app/src/main/java/org/lsposed/manager/util/ModuleUtil.java +++ b/app/src/main/java/org/lsposed/manager/util/ModuleUtil.java @@ -47,8 +47,8 @@ public final class ModuleUtil { private static ModuleUtil instance = null; private final PackageManager pm; private final List listeners = new CopyOnWriteArrayList<>(); - private HashSet enabledModules; - private Map, InstalledModule> installedModules; + private HashSet enabledModules = new HashSet<>(); + private Map, InstalledModule> installedModules = new HashMap<>(); private boolean isReloading = false; private ModuleUtil() { @@ -81,6 +81,12 @@ public final class ModuleUtil { return; isReloading = true; } + if (!ConfigManager.isBinderAlive()) { + synchronized (this) { + isReloading = false; + } + return; + } Map, InstalledModule> modules = new HashMap<>(); for (PackageInfo pkg : ConfigManager.getInstalledPackagesFromAllUsers(PackageManager.GET_META_DATA, false)) {