diff options
Diffstat (limited to 'cpp/test/IceUtil/thread/MutexTest.cpp')
-rw-r--r-- | cpp/test/IceUtil/thread/MutexTest.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/cpp/test/IceUtil/thread/MutexTest.cpp b/cpp/test/IceUtil/thread/MutexTest.cpp index c8bdfec1d88..bc7e6acf60a 100644 --- a/cpp/test/IceUtil/thread/MutexTest.cpp +++ b/cpp/test/IceUtil/thread/MutexTest.cpp @@ -119,7 +119,21 @@ MutexTest::run() } Mutex::TryLock lock2(mutex); +#ifdef __FreeBSD__ + try + { + test(lock.tryAcquire() == false); + } + catch(const IceUtil::ThreadSyscallException& ex) + { + // + // pthread_mutex_trylock returns EDEADLK in FreeBSD's new threading implementation. + // + test(ex.error() == EDEADLK); + } +#else test(lock.tryAcquire() == false); +#endif lock2.release(); test(lock.tryAcquire() == true); test(lock.acquired()); |