diff options
author | brunsch <brunsch@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2000-10-03 19:30:19 +0000 |
---|---|---|
committer | brunsch <brunsch@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2000-10-03 19:30:19 +0000 |
commit | dd0f3c1a9d3c1274bad4a4c2e55f5bb4a89b6d35 (patch) | |
tree | b04625c86cf6bc64501ad6b7107b35fe25e15eba | |
parent | 28e745260c0e0cb4b2f213b81cc6c032b2440293 (diff) | |
download | ATCD-dd0f3c1a9d3c1274bad4a4c2e55f5bb4a89b6d35.tar.gz |
ChangeLogTag:Tue Oct 3 12:25:46 2000 Darrell Brunsch <brunsch@uci.edu>
-rw-r--r-- | ChangeLog | 14 | ||||
-rw-r--r-- | ChangeLogs/ChangeLog-02a | 14 | ||||
-rw-r--r-- | ChangeLogs/ChangeLog-03a | 14 | ||||
-rw-r--r-- | ace/Thread_Adapter.cpp | 6 | ||||
-rw-r--r-- | ace/Thread_Adapter.h | 4 | ||||
-rw-r--r-- | ace/Thread_Exit.cpp | 2 |
6 files changed, 53 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog index 12129976158..49f353d87ea 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,17 @@ +Tue Oct 3 12:25:46 2000 Darrell Brunsch <brunsch@uci.edu> + + * ace/Thread_Exit.cpp: + + Removed default argument in the function definition. + + * ace/Thread_Adapter.cpp: + * ace/Thread_Adapter.h: + + Separated ACE_Thread_Adapter::invoke into invoke and + invoke_i because it uses SEH and James added local vars + with destructors. They don't work together in the same + function. + Tue Oct 03 12:53:28 2000 Angelo Corsaro <corsaro@cs.wustl.edu> * bin/run_all_list.pm: diff --git a/ChangeLogs/ChangeLog-02a b/ChangeLogs/ChangeLog-02a index 12129976158..49f353d87ea 100644 --- a/ChangeLogs/ChangeLog-02a +++ b/ChangeLogs/ChangeLog-02a @@ -1,3 +1,17 @@ +Tue Oct 3 12:25:46 2000 Darrell Brunsch <brunsch@uci.edu> + + * ace/Thread_Exit.cpp: + + Removed default argument in the function definition. + + * ace/Thread_Adapter.cpp: + * ace/Thread_Adapter.h: + + Separated ACE_Thread_Adapter::invoke into invoke and + invoke_i because it uses SEH and James added local vars + with destructors. They don't work together in the same + function. + Tue Oct 03 12:53:28 2000 Angelo Corsaro <corsaro@cs.wustl.edu> * bin/run_all_list.pm: diff --git a/ChangeLogs/ChangeLog-03a b/ChangeLogs/ChangeLog-03a index 12129976158..49f353d87ea 100644 --- a/ChangeLogs/ChangeLog-03a +++ b/ChangeLogs/ChangeLog-03a @@ -1,3 +1,17 @@ +Tue Oct 3 12:25:46 2000 Darrell Brunsch <brunsch@uci.edu> + + * ace/Thread_Exit.cpp: + + Removed default argument in the function definition. + + * ace/Thread_Adapter.cpp: + * ace/Thread_Adapter.h: + + Separated ACE_Thread_Adapter::invoke into invoke and + invoke_i because it uses SEH and James added local vars + with destructors. They don't work together in the same + function. + Tue Oct 03 12:53:28 2000 Angelo Corsaro <corsaro@cs.wustl.edu> * bin/run_all_list.pm: diff --git a/ace/Thread_Adapter.cpp b/ace/Thread_Adapter.cpp index 69696552643..7fe01965b46 100644 --- a/ace/Thread_Adapter.cpp +++ b/ace/Thread_Adapter.cpp @@ -88,6 +88,12 @@ ACE_Thread_Adapter::invoke (void) #endif /* ! ACE_USE_THREAD_MANAGER_ADAPTER */ + return this->invoke_i (); +} + +void * +ACE_Thread_Adapter::invoke_i (void) +{ // Extract the arguments. ACE_THR_FUNC_INTERNAL func = ACE_reinterpret_cast (ACE_THR_FUNC_INTERNAL, this->user_func_); diff --git a/ace/Thread_Adapter.h b/ace/Thread_Adapter.h index 8ef0fc4388f..e2baa67066a 100644 --- a/ace/Thread_Adapter.h +++ b/ace/Thread_Adapter.h @@ -67,6 +67,10 @@ private: ~ACE_Thread_Adapter (void); // Ensure that this object must be allocated on the heap. + virtual void *invoke_i (void); + // Called by invoke, mainly here to separate the SEH stuff because + // SEH on Win32 doesn't compile with local vars with destructors. + private: ACE_Thread_Manager *thr_mgr_; // Optional thread manager. diff --git a/ace/Thread_Exit.cpp b/ace/Thread_Exit.cpp index bcde74fbc63..2128ac148f5 100644 --- a/ace/Thread_Exit.cpp +++ b/ace/Thread_Exit.cpp @@ -105,7 +105,7 @@ ACE_Thread_Exit::~ACE_Thread_Exit (void) ACE_OS_TRACE ("ACE_Thread_Exit::~ACE_Thread_Exit"); } -ACE_Thread_Exit_Maybe::ACE_Thread_Exit_Maybe (int flag = 0) +ACE_Thread_Exit_Maybe::ACE_Thread_Exit_Maybe (int flag) : instance_ (0) { if (flag) |