diff --git a/lib/libcuse/cuse_lib.c b/lib/libcuse/cuse_lib.c --- a/lib/libcuse/cuse_lib.c +++ b/lib/libcuse/cuse_lib.c @@ -104,9 +104,14 @@ else return (CUSE_ERR_INVALID); } - pthread_mutexattr_init(&attr); + if (pthread_mutexattr_init(&attr) != 0) { + close(f_cuse); + f_cuse = -1; + return (CUSE_ERR_NO_MEMORY); + } pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE); pthread_mutex_init(&m_cuse, &attr); + pthread_mutexattr_destroy(&attr); TAILQ_INIT(&h_cuse); TAILQ_INIT(&h_cuse_entered);