From 605eae21bc0e48b6bcd40dd40f502f68bda31e1e Mon Sep 17 00:00:00 2001 From: topjohnwu Date: Fri, 11 Feb 2022 00:24:12 -0800 Subject: [PATCH] Remove unnecessary read/write Close #5425 --- native/jni/zygisk/entry.cpp | 5 ++++- native/jni/zygisk/hook.cpp | 1 - 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/native/jni/zygisk/entry.cpp b/native/jni/zygisk/entry.cpp index 89c32926a..2f428aa63 100644 --- a/native/jni/zygisk/entry.cpp +++ b/native/jni/zygisk/entry.cpp @@ -362,7 +362,10 @@ static void get_process_info(int client, const sock_cred *cred) { send_fds(client, fds.data(), fds.size()); } - // The following will only happen for system_server + if (uid != 1000 || process != "system_server") + return; + + // Collect module status from system_server int slots = read_int(client); int id = 0; for (int i = 0; i < slots; ++i) { diff --git a/native/jni/zygisk/hook.cpp b/native/jni/zygisk/hook.cpp index 5fd25e2fd..3c413feaa 100644 --- a/native/jni/zygisk/hook.cpp +++ b/native/jni/zygisk/hook.cpp @@ -456,7 +456,6 @@ void HookContext::nativeSpecializeAppProcess_pre() { } else if (fd >= 0) { run_modules_pre(module_fds); } - write_int(fd, 0); close(fd); close_fds();