diff options
author | Mark Spruiell <mes@zeroc.com> | 2004-05-25 23:08:54 +0000 |
---|---|---|
committer | Mark Spruiell <mes@zeroc.com> | 2004-05-25 23:08:54 +0000 |
commit | afe88f80f6be7bb0a3f366b0eda2219baa479170 (patch) | |
tree | 855cc8c20df4d47c4bb29f627bf12cd65c38f950 /cpp/test/IceUtil/thread/MutexTest.cpp | |
parent | Fixed bin files (diff) | |
download | ice-afe88f80f6be7bb0a3f366b0eda2219baa479170.tar.bz2 ice-afe88f80f6be7bb0a3f366b0eda2219baa479170.tar.xz ice-afe88f80f6be7bb0a3f366b0eda2219baa479170.zip |
FreeBSD fix for EDEADLK
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()); |