X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=thread-utils.c;h=7f4b76a95899cc28aa1d42598d1649f126980ed9;hb=bc62ca13c03a7f73b7091c26093c552776b749ee;hp=55e7e2904eb5f95cedaec2520ddd1d158ee93c7a;hpb=77f143bf3e218857ec8e5244d7e862e8e0c1a041;p=git.git diff --git a/thread-utils.c b/thread-utils.c index 55e7e2904..7f4b76a95 100644 --- a/thread-utils.c +++ b/thread-utils.c @@ -1,9 +1,7 @@ #include "cache.h" +#include "thread-utils.h" -#ifdef _WIN32 -# define WIN32_LEAN_AND_MEAN -# include -#elif defined(hpux) || defined(__hpux) || defined(_hpux) +#if defined(hpux) || defined(__hpux) || defined(_hpux) # include #endif @@ -46,3 +44,18 @@ int online_cpus(void) return 1; } + +int init_recursive_mutex(pthread_mutex_t *m) +{ + pthread_mutexattr_t a; + int ret; + + ret = pthread_mutexattr_init(&a); + if (!ret) { + ret = pthread_mutexattr_settype(&a, PTHREAD_MUTEX_RECURSIVE); + if (!ret) + ret = pthread_mutex_init(m, &a); + pthread_mutexattr_destroy(&a); + } + return ret; +}