From d53b49e5f58de1d63cb57069c34f8406fc9b86f7 Mon Sep 17 00:00:00 2001 From: Carmelo Amoroso Date: Wed, 5 Dec 2007 17:25:04 +0000 Subject: Fix opendir problem when statically linked due to a missing initialization of the mutex field within DIR struct. When linked dynamically instead, __pthread_mutex_init will initialize the mutex itself. Without this fix, any call to readdir will stuck forever trying to acquire the mutex. Signed-off-by: Carmelo Amoroso --- libc/misc/dirent/opendir.c | 1 + 1 file changed, 1 insertion(+) (limited to 'libc/misc/dirent') diff --git a/libc/misc/dirent/opendir.c b/libc/misc/dirent/opendir.c index 338bef17a..cee703e68 100644 --- a/libc/misc/dirent/opendir.c +++ b/libc/misc/dirent/opendir.c @@ -64,6 +64,7 @@ close_and_ret: if (!(ptr = malloc(sizeof(*ptr)))) goto nomem_close_and_ret; + memset(ptr, '\0', sizeof(DIR)); ptr->dd_fd = fd; ptr->dd_nextloc = ptr->dd_size = ptr->dd_nextoff = 0; -- cgit v1.2.3