From c166dbc9df5d420add6cfb3b1a22228a20793228 Mon Sep 17 00:00:00 2001 From: 5ec1cff <56485584+5ec1cff@users.noreply.github.com> Date: Wed, 19 Jun 2024 09:19:04 +0800 Subject: [PATCH] throne_tracker: skip iterate if failed to open dir (#1832) fix https://github.com/tiann/KernelSU/issues/1800 --- drivers/kernelsu/throne_tracker.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/kernelsu/throne_tracker.c b/drivers/kernelsu/throne_tracker.c index eb04c8b0f344..d7c1dae14a17 100644 --- a/drivers/kernelsu/throne_tracker.c +++ b/drivers/kernelsu/throne_tracker.c @@ -236,13 +236,13 @@ void search_manager(const char *path, int depth, struct list_head *uid_data) file = ksu_filp_open_compat(pos->dirpath, O_RDONLY | O_NOFOLLOW, 0); if (IS_ERR(file)) { pr_err("Failed to open directory: %s, err: %ld\n", pos->dirpath, PTR_ERR(file)); - return; + goto skip_iterate; } iterate_dir(file, &ctx.ctx); filp_close(file, NULL); } - +skip_iterate: list_del(&pos->list); if (pos != &data) kfree(pos);