summaryrefslogtreecommitdiff
path: root/ace
diff options
context:
space:
mode:
authorlevine <levine@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1999-03-05 22:59:53 +0000
committerlevine <levine@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1999-03-05 22:59:53 +0000
commit73d264dc3aebc3f2cb0d83f7d212631849c245ca (patch)
treebf64747710adaadedaa6a51a2d20e12e518f4398 /ace
parent3a59376fd5c0a9ca1a232961a529200ed012bf2f (diff)
downloadATCD-73d264dc3aebc3f2cb0d83f7d212631849c245ca.tar.gz
(cleanup_tss): disabled call to free_all_keys_left () with
ACE_HAS_TSS_EMULATION, because ACE_TSS_Cleanup::in_use_key_ initialization isn't thread safe, yet.
Diffstat (limited to 'ace')
-rw-r--r--ace/OS.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/ace/OS.cpp b/ace/OS.cpp
index 320235fe5b5..cb112248a8f 100644
--- a/ace/OS.cpp
+++ b/ace/OS.cpp
@@ -2101,8 +2101,15 @@ ACE_OS::cleanup_tss (const u_int main_thread)
#endif /* ! ACE_HAS_TSS_EMULATION && ! ACE_HAS_MINIMAL_ACE_OS */
#if defined (ACE_WIN32) || defined (ACE_HAS_TSS_EMULATION)
+#if !defined (ACE_HAS_TSS_EMULATION)
+ // Don't do this with TSS_Emulation, because the
+ // ACE_TSS_Cleanup::in_use_key_ initialization isn't
+ // thread safe, yet.
+
// Remove all TSS_Info table entries.
ACE_TSS_Cleanup::instance ()->free_all_keys_left ();
+#endif /* ! ACE_HAS_TSS_EMULATION) */
+
// Finally, free up the ACE_TSS_Cleanup instance. This method gets
// called by the ACE_Object_Manager.
delete ACE_TSS_Cleanup::instance ();