diff options
author | nanbor <nanbor@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2002-11-29 19:21:11 +0000 |
---|---|---|
committer | nanbor <nanbor@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2002-11-29 19:21:11 +0000 |
commit | 4453067afa70a834fbf3457ad59035026722ef71 (patch) | |
tree | aac3a9dcf58fad9b342e55929329bb63a2d3ede4 /ace/Thread_Manager.i | |
parent | 805465362e89fb0cf944ffa5f0d2830a25c30c7b (diff) | |
download | ATCD-4453067afa70a834fbf3457ad59035026722ef71.tar.gz |
ChangeLogTag:Fri Nov 29 12:23:14 2002 Nanbor Wang <nanbor@cs.wustl.edu>
Diffstat (limited to 'ace/Thread_Manager.i')
-rw-r--r-- | ace/Thread_Manager.i | 24 |
1 files changed, 18 insertions, 6 deletions
diff --git a/ace/Thread_Manager.i b/ace/Thread_Manager.i index 54f2968598e..4a49398eaab 100644 --- a/ace/Thread_Manager.i +++ b/ace/Thread_Manager.i @@ -218,7 +218,7 @@ ACE_Thread_Manager::thread_desc_self (void) ACE_Thread_Descriptor *desc = ACE_LOG_MSG->thr_desc (); #if 1 - ACE_ASSERT (desc != 0); + // ACE_ASSERT (desc != 0); // Thread descriptor should always get cached. #else if (desc == 0) @@ -270,13 +270,21 @@ ACE_Thread_Manager::open (size_t) ACE_INLINE int ACE_Thread_Manager::at_exit (ACE_At_Thread_Exit* at) { - return this->thread_desc_self ()->at_exit (at); + ACE_Thread_Descriptor *td = this->thread_desc_self (); + if (td == 0) + return -1; + else + return td->at_exit (at); } ACE_INLINE int ACE_Thread_Manager::at_exit (ACE_At_Thread_Exit& at) { - return this->thread_desc_self ()->at_exit (at); + ACE_Thread_Descriptor *td = this->thread_desc_self (); + if (td == 0) + return -1; + else + return td->at_exit (at); } #endif /* !ACE_USE_ONE_SHOT_AT_THREAD_EXIT */ @@ -285,9 +293,13 @@ ACE_Thread_Manager::at_exit (void *object, ACE_CLEANUP_FUNC cleanup_hook, void *param) { - return this->thread_desc_self ()->at_exit (object, - cleanup_hook, - param); + ACE_Thread_Descriptor *td = this->thread_desc_self (); + if (td == 0) + return -1; + else + return td->at_exit (object, + cleanup_hook, + param); } ACE_INLINE void |