diff options
author | irfan <irfan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1998-09-23 07:02:13 +0000 |
---|---|---|
committer | irfan <irfan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1998-09-23 07:02:13 +0000 |
commit | 53610c352461a60657137074bdffdc42d75dc3f3 (patch) | |
tree | 7da44f4a1e68d48b2180e5d9cb6b053ec17fd09c | |
parent | 2482bfbb977e3244c837a34b736a980a0bc09ee3 (diff) | |
download | ATCD-53610c352461a60657137074bdffdc42d75dc3f3.tar.gz |
*** empty log message ***
-rw-r--r-- | TAO/ChangeLog-98c | 5 | ||||
-rw-r--r-- | TAO/tao/ORB.cpp | 9 | ||||
-rw-r--r-- | TAO/tao/ORB.h | 30 |
3 files changed, 29 insertions, 15 deletions
diff --git a/TAO/ChangeLog-98c b/TAO/ChangeLog-98c index a454c61133f..fa126a5bf7a 100644 --- a/TAO/ChangeLog-98c +++ b/TAO/ChangeLog-98c @@ -1,3 +1,8 @@ +Wed Sep 23 01:24:09 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/ORB.h (struct TAO_Leader_Follower_Info): Added constructor + cause all the fields were not being initialized properly. + 1998-09-22 Nagarajan Surendran <naga@tango.cs.wustl.edu> * performance-tests/Cubit/TAO/MT_Cubit/Task_Client.cpp : diff --git a/TAO/tao/ORB.cpp b/TAO/tao/ORB.cpp index 1f6acf797e8..17af8074076 100644 --- a/TAO/tao/ORB.cpp +++ b/TAO/tao/ORB.cpp @@ -44,6 +44,14 @@ ACE_TIMEPROBE_EVENT_DESCRIPTIONS (TAO_ORB_Timeprobe_Description, // Static initialization. int CORBA_ORB::orb_init_count_ = 0; +TAO_Leader_Follower_Info::TAO_Leader_Follower_Info (void) + : leader_follower_lock_ (), + follower_set_ (), + leaders_ (0), + leader_thread_ID_ (ACE_OS::NULL_thread) +{ +} + CORBA::String_var::String_var (char *p) : ptr_ (p) { @@ -82,7 +90,6 @@ CORBA_ORB::CORBA_ORB (void) event_service_ (CORBA_Object::_nil ()), trading_service_ (CORBA_Object::_nil ()) { - leader_follower_info_.leader_thread_ID_ = ACE_OS::NULL_thread; ACE_NEW (this->cond_become_leader_, ACE_SYNCH_CONDITION (leader_follower_info_.leader_follower_lock_)); } diff --git a/TAO/tao/ORB.h b/TAO/tao/ORB.h index 0fddb362275..b6d53ad659b 100644 --- a/TAO/tao/ORB.h +++ b/TAO/tao/ORB.h @@ -193,21 +193,23 @@ typedef u_int CORBA_Flags; typedef u_char CORBA_Boolean; #endif /* ! (ghs && CHORUS) */ - typedef struct TAO_Leader_Follower_Info_Struct - { - ACE_SYNCH_MUTEX leader_follower_lock_; - // do protect the access to the following three members - - ACE_Unbounded_Set<ACE_SYNCH_CONDITION *> follower_set_; - // keep a set of followers around (protected) - - int leaders_; - // 0 if no leader is around, 1 if there is a leader - // > 1 if we do nested upcalls (protected) +struct TAO_Leader_Follower_Info +{ + TAO_Leader_Follower_Info (void); - ACE_thread_t leader_thread_ID_; - // thread ID of the leader thread (protected) - } TAO_Leader_Follower_Info; + ACE_SYNCH_MUTEX leader_follower_lock_; + // do protect the access to the following three members + + ACE_Unbounded_Set<ACE_SYNCH_CONDITION *> follower_set_; + // keep a set of followers around (protected) + + int leaders_; + // 0 if no leader is around, 1 if there is a leader + // > 1 if we do nested upcalls (protected) + + ACE_thread_t leader_thread_ID_; + // thread ID of the leader thread (protected) +}; // forward declare sequences. |