diff options
author | frehberger <frehberger@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2006-02-22 05:03:49 +0000 |
---|---|---|
committer | frehberger <frehberger@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2006-02-22 05:03:49 +0000 |
commit | a7340e77bb4752f24951c8168c78cfe78269295f (patch) | |
tree | d693e5b8ef1f3d323de243c6d9c7eb73e07349da | |
parent | 7bc3518311d32879946449057bb981bfa338c722 (diff) | |
download | ATCD-a7340e77bb4752f24951c8168c78cfe78269295f.tar.gz |
ChangeLogTag: Wed Feb 22 04:45:00 UTC 2006 Frank Rehberger <frehberger@prismtech.com>
-rw-r--r-- | TAO/ChangeLog | 13 | ||||
-rw-r--r-- | TAO/tao/ORB_Core.cpp | 12 | ||||
-rw-r--r-- | TAO/tao/ORB_Table.h | 26 | ||||
-rw-r--r-- | TAO/tao/ORB_Table.inl | 6 | ||||
-rw-r--r-- | TAO/tao/Stub.i | 2 |
5 files changed, 40 insertions, 19 deletions
diff --git a/TAO/ChangeLog b/TAO/ChangeLog index 7c441a1390d..352704569ac 100644 --- a/TAO/ChangeLog +++ b/TAO/ChangeLog @@ -1,3 +1,16 @@ +Wed Feb 22 04:45:00 UTC 2006 Frank Rehberger <frehberger@prismtech.com> + * tao/ORB_Core.cpp: + Fixing TAO_ORB_Core_Auto_Ptr assignment + + * tao/ORB_Table.{h,inl}: + Fixing namespace-ing for TAO_ORB_Core. + + * tao/Stub.i: + Fixing TAO_ORB_Core declaration + + Together all these changes are related to previous commit for + bugzilla bugs #1741 / #2134; #2289; #1493; #2130. + Tue Feb 21 19:17:12 UTC 2006 Johnny Willemsen <jwillemsen@remedy.nl> * tao/AnyTypeCode/AnyTypeCode_Adapter_Impl.{h,cpp}: diff --git a/TAO/tao/ORB_Core.cpp b/TAO/tao/ORB_Core.cpp index e9c63667e3c..16eb4f60a59 100644 --- a/TAO/tao/ORB_Core.cpp +++ b/TAO/tao/ORB_Core.cpp @@ -1819,12 +1819,14 @@ TAO_ORB_Core::create_object (TAO_Stub *stub) TAO::ORB_Table::iterator const end = table->end (); for (TAO::ORB_Table::iterator i = table->begin (); i != end; ++i) { - TAO_ORB_Core * const other_core = (*i).second.core (); + ::TAO_ORB_Core * const other_core = (*i).second.core (); if (this->is_collocation_enabled (other_core, mprofile)) { - collocated_orb_core = other_core->_incr_refcnt(); + other_core->_incr_refcnt(); + TAO_ORB_Core_Auto_Ptr tmp_auto_ptr (other_core); + collocated_orb_core = tmp_auto_ptr; break; } } @@ -1898,7 +1900,9 @@ TAO_ORB_Core::initialize_object_i (TAO_Stub *stub, if (this->is_collocation_enabled (other_core, mprofile)) { - collocated_orb_core = other_core->_incr_refcnt (); + other_core->_incr_refcnt (); + TAO_ORB_Core_Auto_Ptr tmp_auto_ptr (other_core); + collocated_orb_core = tmp_auto_ptr; break; } } @@ -1907,7 +1911,7 @@ TAO_ORB_Core::initialize_object_i (TAO_Stub *stub, if (collocated_orb_core.get ()) { TAO_Adapter_Registry *ar = - collocated_orb_core->get ()->adapter_registry (); + collocated_orb_core.get ()->adapter_registry (); retval = ar->initialize_collocated_object (stub); } diff --git a/TAO/tao/ORB_Table.h b/TAO/tao/ORB_Table.h index 6bc28cc7efb..4675891373f 100644 --- a/TAO/tao/ORB_Table.h +++ b/TAO/tao/ORB_Table.h @@ -25,10 +25,12 @@ #include "tao/orbconf.h" #include "tao/CORBA_String.h" +#include "tao/ORB_Core.h" #include "ace/Array_Map.h" #include "ace/Thread_Mutex.h" + TAO_BEGIN_VERSIONED_NAMESPACE_DECL // Forward declarations. @@ -61,7 +63,7 @@ namespace TAO */ class TAO_Export ORB_Table { - friend class TAO_ORB_Core; + friend class ::TAO_ORB_Core; public: /// Constructor @@ -86,7 +88,7 @@ namespace TAO //@{ iterator begin (void); iterator end (void); - int bind (const char *orb_id, TAO_ORB_Core *orb_core); + int bind (const char *orb_id, ::TAO_ORB_Core *orb_core); /// Return @c TAO_ORB_Core corresponding to ORB with given @a /// orb_id. @@ -94,16 +96,16 @@ namespace TAO * @note The caller must decrease the reference count on the * returned ORB_Core, i.e. the callers "owns" it. */ - TAO_ORB_Core* find (const char *orb_id); + ::TAO_ORB_Core* find (const char *orb_id); int unbind (const char *orb_id); //@} - TAO_ORB_Core * const * get_orbs (size_t& num_orbs); + ::TAO_ORB_Core * const * get_orbs (size_t& num_orbs); /// Obtain the first ORB for the @c ORB_Core_instance() /// implementation. - TAO_ORB_Core * first_orb (void); + ::TAO_ORB_Core * first_orb (void); /// Return a unique instance static ORB_Table * instance (void); @@ -127,7 +129,7 @@ namespace TAO /// Return @c TAO_ORB_Core corresponding to ORB with given @a /// orb_id. (underlying unlocked implementation). - TAO_ORB_Core * find_i (char const * orb_id); + ::TAO_ORB_Core * find_i (char const * orb_id); /// Update our list of orbs /** @@ -138,7 +140,7 @@ namespace TAO private: /// Lock used to synchronize access to the internal state. - TAO_SYNCH_MUTEX lock_; + ::TAO_SYNCH_MUTEX lock_; /// Variable to check if the first ORB decides not to be the /// default. @@ -148,13 +150,13 @@ namespace TAO Table table_; /// The first ORB created by the user - TAO_ORB_Core * first_orb_; + ::TAO_ORB_Core * first_orb_; /// List of orbs for get_orbs call /** * @todo ORB_Table::orbs_ appears to be unused. Remove it? */ - TAO_ORB_Core ** orbs_; + ::TAO_ORB_Core ** orbs_; /// Number of ORBs in the table. size_t num_orbs_; @@ -178,7 +180,7 @@ namespace TAO ORB_Core_Ref_Counter (void); /// Constructor. - ORB_Core_Ref_Counter (TAO_ORB_Core * core); + ORB_Core_Ref_Counter (::TAO_ORB_Core * core); /// Destructor. ~ORB_Core_Ref_Counter (void); @@ -190,11 +192,11 @@ namespace TAO void operator= (ORB_Core_Ref_Counter const & rhs); /// ORB_Core pointer accessor. - TAO_ORB_Core * core (void) const { return this->core_; } + ::TAO_ORB_Core * core (void) const { return this->core_; } private: - TAO_ORB_Core * core_; + ::TAO_ORB_Core * core_; }; diff --git a/TAO/tao/ORB_Table.inl b/TAO/tao/ORB_Table.inl index ddedd35a049..b3145b1f2e0 100644 --- a/TAO/tao/ORB_Table.inl +++ b/TAO/tao/ORB_Table.inl @@ -8,7 +8,7 @@ TAO_BEGIN_VERSIONED_NAMESPACE_DECL -ACE_INLINE TAO_ORB_Core * +ACE_INLINE ::TAO_ORB_Core * TAO::ORB_Table::first_orb (void) { return this->first_orb_; @@ -26,7 +26,7 @@ TAO::ORB_Table::end (void) return this->table_.end (); } -ACE_INLINE TAO_ORB_Core* const * +ACE_INLINE ::TAO_ORB_Core* const * TAO::ORB_Table::get_orbs (size_t& num_orbs) { num_orbs = this->num_orbs_; @@ -49,7 +49,7 @@ TAO::ORB_Core_Ref_Counter::ORB_Core_Ref_Counter (void) } ACE_INLINE -TAO::ORB_Core_Ref_Counter::ORB_Core_Ref_Counter (TAO_ORB_Core * core) +TAO::ORB_Core_Ref_Counter::ORB_Core_Ref_Counter (::TAO_ORB_Core * core) : core_ (core) { // ACE_ASSERT (core != 0); diff --git a/TAO/tao/Stub.i b/TAO/tao/Stub.i index cc95c3aec32..e288fd6137e 100644 --- a/TAO/tao/Stub.i +++ b/TAO/tao/Stub.i @@ -2,6 +2,8 @@ // // $Id$ +#include "tao/ORB_Core.h" + TAO_BEGIN_VERSIONED_NAMESPACE_DECL ACE_INLINE void |