From 0c737d3b2e4728347cf4d52025f9fc2ebbee6e90 Mon Sep 17 00:00:00 2001 From: William Wilgus Date: Wed, 1 May 2024 10:01:56 -0400 Subject: readdir_r use in tagcache.check_dir, ft_load Change-Id: Ibcde39ed247e100dd47ae877fb2a3625bbb38d8b --- apps/tagcache.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'apps/tagcache.c') diff --git a/apps/tagcache.c b/apps/tagcache.c index 9463d7c865..302b6ad9de 100644 --- a/apps/tagcache.c +++ b/apps/tagcache.c @@ -4863,8 +4863,8 @@ static int free_search_roots(struct search_roots_ll * start) static bool check_dir(const char *dirname, int add_files) { + static struct dirent direntry; /* function is recursive, static uses less stack */ int success = false; - DIR *dir = opendir(dirname); if (!dir) { @@ -4883,7 +4883,9 @@ static bool check_dir(const char *dirname, int add_files) /* Recursively scan the dir. */ while (!check_event_queue()) { - struct dirent *entry = readdir(dir); + struct dirent *entry; + readdir_r(dir, &direntry, &entry); + if (entry == NULL) { success = true; -- cgit v1.2.3