From 55fe34095d4d3e55dc84c84d96344c822d27985d Mon Sep 17 00:00:00 2001 From: tehcneko <88844448+tehcneko@users.noreply.github.com> Date: Thu, 26 Aug 2021 17:34:16 +0800 Subject: [PATCH] [app] Check binder alive in reload installed modules (#1012) --- .../main/java/org/lsposed/manager/util/ModuleUtil.java | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) 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)) {