diff --git a/src/c/threads.d b/src/c/threads.d index 6db1a7328..777eb3191 100644 --- a/src/c/threads.d +++ b/src/c/threads.d @@ -284,11 +284,7 @@ init_threads() cl_core.processes = OBJNULL; pthread_mutexattr_init(&attr); -#if defined(__APPLE__) - pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_ERRORCHECK); -#else pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_ERRORCHECK_NP); -#endif pthread_mutex_init(&cl_core.global_lock, &attr); pthread_mutexattr_destroy(&attr); diff --git a/src/h/ecl-cmp.h b/src/h/ecl-cmp.h index 478b37681..ed95cedc7 100644 --- a/src/h/ecl-cmp.h +++ b/src/h/ecl-cmp.h @@ -41,6 +41,9 @@ typedef unsigned short uint16_t; # undef ERROR # else # include +# if defined(__APPLE__) || defined(freebsd) +# define PTHREAD_MUTEX_ERROR_CHECK_NP PTHREAD_MUTEX_ERROR_CHECK_NP +# endif # endif # define start_critical_section() # define end_critical_section() diff --git a/src/h/ecl.h b/src/h/ecl.h index d7af3b90e..8c4c36fcc 100644 --- a/src/h/ecl.h +++ b/src/h/ecl.h @@ -43,6 +43,9 @@ typedef unsigned short uint16_t; # undef ERROR # else # include +# if defined(__APPLE__) || defined(freebsd) +# define PTHREAD_MUTEX_ERROR_CHECK_NP PTHREAD_MUTEX_ERROR_CHECK_NP +# endif # endif # define start_critical_section() # define end_critical_section()