summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorlevine <levine@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1999-04-21 20:01:18 +0000
committerlevine <levine@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1999-04-21 20:01:18 +0000
commitb997898edd39baab24f5b6d30feb0332260c0bdf (patch)
treeee66145627b18b087db7a11bd99eb611d489a273
parent82010d0df731e2d9485f0cc0baca52698ad1c5ea (diff)
downloadATCD-b997898edd39baab24f5b6d30feb0332260c0bdf.tar.gz
(ACE_OS_Object_Manager::fini): disabled
ACE_{recursive/thread}_mutex_destroy () calls, because the failed on LynxOS in forked children. The prevents the failure message from being printed, with no apparent ill effect.
-rw-r--r--ace/OS.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/ace/OS.cpp b/ace/OS.cpp
index 30766fa8710..e065fcf3c2a 100644
--- a/ace/OS.cpp
+++ b/ace/OS.cpp
@@ -6336,29 +6336,38 @@ ACE_OS_Object_Manager::fini (void)
#if ! defined (ACE_HAS_STATIC_PREALLOCATION)
// Cleanup the dynamically preallocated objects.
# if defined (ACE_MT_SAFE) && (ACE_MT_SAFE != 0)
+# if !defined (__Lynx__)
+ // LynxOS 3.0.0 has problems with this after fork.
if (ACE_OS::thread_mutex_destroy (ACE_reinterpret_cast (
ACE_thread_mutex_t *,
ACE_OS_Object_Manager::preallocated_object[ACE_OS_MONITOR_LOCK])) != 0)
ACE_ERROR ((LM_ERROR,
ASYS_TEXT("%p\n"),
ASYS_TEXT("ACE_OS_Object_Manager::fini (1)")));
+# endif /* ! __Lynx__ */
ACE_OS_DELETE_PREALLOCATED_OBJECT (ACE_thread_mutex_t, ACE_OS_MONITOR_LOCK)
+# if !defined (__Lynx__)
+ // LynxOS 3.0.0 has problems with this after fork.
if (ACE_OS::recursive_mutex_destroy (ACE_reinterpret_cast (
ACE_recursive_thread_mutex_t *,
ACE_OS_Object_Manager::preallocated_object[ACE_TSS_CLEANUP_LOCK])) != 0)
ACE_ERROR ((LM_ERROR,
ASYS_TEXT("%p\n"),
ASYS_TEXT("ACE_OS_Object_Manager::fini (2)")));
+# endif /* ! __Lynx__ */
ACE_OS_DELETE_PREALLOCATED_OBJECT (ACE_recursive_thread_mutex_t,
ACE_TSS_CLEANUP_LOCK)
# if defined (ACE_HAS_TSS_EMULATION) && \
defined (ACE_HAS_THREAD_SPECIFIC_STORAGE)
+# if !defined (__Lynx__)
+ // LynxOS 3.0.0 has problems with this after fork.
if (ACE_OS::recursive_mutex_destroy (ACE_reinterpret_cast (
ACE_recursive_thread_mutex_t *,
ACE_OS_Object_Manager::preallocated_object[ACE_TSS_BASE_LOCK])) != 0)
ACE_ERROR ((LM_ERROR,
ASYS_TEXT("%p\n"),
ASYS_TEXT("ACE_OS_Object_Manager::fini (3)")));
+# endif /* ! __Lynx__ */
ACE_OS_DELETE_PREALLOCATED_OBJECT (ACE_recursive_thread_mutex_t,
ACE_TSS_BASE_LOCK)
# endif /* ACE_HAS_TSS_EMULATION && ACE_HAS_THREAD_SPECIFIC_STORAGE */