From aeb7fd7cb3c9edf71b501112bfbf9b911917cad1 Mon Sep 17 00:00:00 2001 From: Acetylcholine <40174090+cinit@users.noreply.github.com> Date: Sun, 7 Aug 2022 19:48:47 +0800 Subject: [PATCH] Fix denylist add_list Signed-off-by: ACh Sulfate Co-authored-by: John Wu --- native/src/zygisk/deny/utils.cpp | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/native/src/zygisk/deny/utils.cpp b/native/src/zygisk/deny/utils.cpp index 051643c01..65054c064 100644 --- a/native/src/zygisk/deny/utils.cpp +++ b/native/src/zygisk/deny/utils.cpp @@ -179,20 +179,20 @@ static bool validate(const char *pkg, const char *proc) { return pkg_valid && proc_valid; } -static auto add_hide_set(const char *pkg, const char *proc) { +static bool add_hide_set(const char *pkg, const char *proc) { auto p = pkg_to_procs[pkg].emplace(proc); if (!p.second) - return p; + return false; LOGI("denylist add: [%s/%s]\n", pkg, proc); if (!do_kill) - return p; + return true; if (str_eql(pkg, ISOLATED_MAGIC)) { // Kill all matching isolated processes kill_process<&proc_name_match>(proc, true); } else { kill_process(proc); } - return p; + return true; } static void clear_data() { @@ -234,10 +234,10 @@ static int add_list(const char *pkg, const char *proc) { mutex_guard lock(data_lock); if (!ensure_data()) return DenyResponse::ERROR; - auto p = add_hide_set(pkg, proc); - if (!p.second) + if (!add_hide_set(pkg, proc)) return DenyResponse::ITEM_EXIST; - update_pkg_uid(*p.first, false); + auto it = pkg_to_procs.find(pkg); + update_pkg_uid(it->first, false); } // Add to database