summaryrefslogtreecommitdiff
path: root/cpp/src/IceUtil/RecMutex.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/IceUtil/RecMutex.cpp')
-rw-r--r--cpp/src/IceUtil/RecMutex.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/cpp/src/IceUtil/RecMutex.cpp b/cpp/src/IceUtil/RecMutex.cpp
index 5ea3bbed165..ae83312043c 100644
--- a/cpp/src/IceUtil/RecMutex.cpp
+++ b/cpp/src/IceUtil/RecMutex.cpp
@@ -88,7 +88,12 @@ IceUtil::RecMutex::lock(LockState& state) const
IceUtil::RecMutex::RecMutex() :
_count(0)
{
+#ifdef __linux__
const pthread_mutexattr_t attr = { PTHREAD_MUTEX_RECURSIVE_NP };
+#else
+ const pthread_mutexattr_t attr = { PTHREAD_MUTEX_RECURSIVE };
+#endif
+
int rc = pthread_mutex_init(&_mutex, &attr);
if(rc != 0)
{