diff options
author | bala <balanatarajan@users.noreply.github.com> | 2003-10-16 17:46:10 +0000 |
---|---|---|
committer | bala <balanatarajan@users.noreply.github.com> | 2003-10-16 17:46:10 +0000 |
commit | dfdf1a5b0bd8e60aa2e90f702d64e67269879117 (patch) | |
tree | d26f4dce45865b1492ae31271cc2dd5bdacedc96 | |
parent | 93dee905cd352d5de01616af17266dd9c017467d (diff) | |
download | ATCD-dfdf1a5b0bd8e60aa2e90f702d64e67269879117.tar.gz |
ChangeLogTag:Thu Oct 16 12:42:59 2003 Balachandran Natarajan <bala@dre.vanderbilt.edu>
-rw-r--r-- | TAO/ChangeLog_ref | 11 | ||||
-rw-r--r-- | TAO/tao/LocateRequest_Invocation_Adapter.cpp | 4 | ||||
-rw-r--r-- | TAO/tao/Profile_Transport_Resolver.h | 1 | ||||
-rw-r--r-- | TAO/tao/Profile_Transport_Resolver.inl | 8 |
4 files changed, 22 insertions, 2 deletions
diff --git a/TAO/ChangeLog_ref b/TAO/ChangeLog_ref index 304763ad676..eead9b90859 100644 --- a/TAO/ChangeLog_ref +++ b/TAO/ChangeLog_ref @@ -1,3 +1,14 @@ +Thu Oct 16 12:42:59 2003 Balachandran Natarajan <bala@dre.vanderbilt.edu> + + * tao/LocateRequest_Invocation_Adapter.cpp: + get_inconsistent_policies (), now returns _retn () instead of + .out () on the PolicyList_var. + + * tao/Profile_Transport_Resolver.h: + * tao/Profile_Transport_Resolver.inl: Added a new method + steal_inconsistent_policies () which makes this object to loose + ownership of the PolicyList pointer. + Thu Oct 16 11:31:45 2003 Balachandran Natarajan <bala@dre.vanderbilt.edu> * tao/LocateRequest_Invocation_Adapter.cpp: Initialize the diff --git a/TAO/tao/LocateRequest_Invocation_Adapter.cpp b/TAO/tao/LocateRequest_Invocation_Adapter.cpp index 69c4e8c5b24..332e9e79dee 100644 --- a/TAO/tao/LocateRequest_Invocation_Adapter.cpp +++ b/TAO/tao/LocateRequest_Invocation_Adapter.cpp @@ -81,7 +81,7 @@ namespace TAO ACE_CATCH (CORBA::INV_POLICY, ex) { this->list_ = - resolver.inconsistent_policies (); + resolver.steal_inconsistent_policies (); ACE_RE_THROW; } ACE_CATCHANY @@ -98,7 +98,7 @@ namespace TAO CORBA::PolicyList * LocateRequest_Invocation_Adapter::get_inconsistent_policies (void) { - return this->list_.out (); + return this->list_._retn (); } bool diff --git a/TAO/tao/Profile_Transport_Resolver.h b/TAO/tao/Profile_Transport_Resolver.h index 23d7cc21b0f..380a69c9872 100644 --- a/TAO/tao/Profile_Transport_Resolver.h +++ b/TAO/tao/Profile_Transport_Resolver.h @@ -118,6 +118,7 @@ namespace TAO CORBA::PolicyList *inconsistent_policies (void) const; + CORBA::PolicyList *steal_inconsistent_policies (void); private: /// Helper method to access get the connection timeout from the diff --git a/TAO/tao/Profile_Transport_Resolver.inl b/TAO/tao/Profile_Transport_Resolver.inl index b5461a23800..3314fa6354d 100644 --- a/TAO/tao/Profile_Transport_Resolver.inl +++ b/TAO/tao/Profile_Transport_Resolver.inl @@ -37,4 +37,12 @@ namespace TAO { return this->inconsistent_policies_; } + + ACE_INLINE CORBA::PolicyList * + Profile_Transport_Resolver::steal_inconsistent_policies (void) + { + CORBA::PolicyList *tmp = this->inconsistent_policies_; + this->inconsistent_policies_ = 0; + return tmp; + } } |