diff options
author | irfan <irfan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2000-12-08 04:33:30 +0000 |
---|---|---|
committer | irfan <irfan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2000-12-08 04:33:30 +0000 |
commit | ab5dc0cc26c10de6d04c8adf699f0614187076da (patch) | |
tree | b96a6c4ae8447cf8c51bfdc282c510a883e17e6a | |
parent | 20402df0418afc42aa4052de7acccb6ecfdb80e9 (diff) | |
download | ATCD-ab5dc0cc26c10de6d04c8adf699f0614187076da.tar.gz |
ChangeLogTag: Thu Dec 07 22:20:12 2000 Irfan Pyarali <irfan@cs.wustl.edu>
-rw-r--r-- | TAO/ChangeLogs/ChangeLog-02a | 10 | ||||
-rw-r--r-- | TAO/tao/Object.cpp | 5 | ||||
-rw-r--r-- | TAO/tao/Remote_Object_Proxy_Impl.cpp | 5 |
3 files changed, 15 insertions, 5 deletions
diff --git a/TAO/ChangeLogs/ChangeLog-02a b/TAO/ChangeLogs/ChangeLog-02a index 5d2e168cbba..5eb84f3577f 100644 --- a/TAO/ChangeLogs/ChangeLog-02a +++ b/TAO/ChangeLogs/ChangeLog-02a @@ -1,3 +1,13 @@ +Thu Dec 07 22:20:12 2000 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/Object.cpp (_is_a): Checking the hint of the object can be + done in the CORBA::Object class before invoking the appropriate + proxy implementation. The hint check is common for all + implementations and not just the remote case. Therefore, the + code was removed from TAO_Remote_Object_Proxy_Impl::_is_a() and + moved to CORBA::Object::_is_a(). Thanks to Russell L. Carter + <rcarter@consys.com> for reporting this problem. + Thu Dec 07 20:00:59 2000 Marina Spivak <marina@cs.wustl.edu> * tests/RTCORBA/MT_Client_Protocol_Priority/client.dsp diff --git a/TAO/tao/Object.cpp b/TAO/tao/Object.cpp index 76b3ce3e1ae..41948a3893d 100644 --- a/TAO/tao/Object.cpp +++ b/TAO/tao/Object.cpp @@ -107,6 +107,11 @@ CORBA_Object::_is_a (const char *type_id, if (this->is_local_) ACE_THROW_RETURN (CORBA::NO_IMPLEMENT (), 0); + if (this->_stubobj ()->type_id.in () != 0 + && ACE_OS::strcmp (type_id, + this->_stubobj ()->type_id.in ()) == 0) + return 1; + CORBA::Boolean _tao_retval = 0; // Get the right Proxy Implementation. diff --git a/TAO/tao/Remote_Object_Proxy_Impl.cpp b/TAO/tao/Remote_Object_Proxy_Impl.cpp index 526bd7f5299..0de86840fdb 100644 --- a/TAO/tao/Remote_Object_Proxy_Impl.cpp +++ b/TAO/tao/Remote_Object_Proxy_Impl.cpp @@ -24,11 +24,6 @@ TAO_Remote_Object_Proxy_Impl::_is_a (const CORBA::Object_ptr target, const CORBA::Char *logical_type_id, CORBA_Environment &ACE_TRY_ENV) { - if (target->_stubobj ()->type_id.in () != 0 - && ACE_OS::strcmp (logical_type_id, - target->_stubobj ()->type_id.in ()) == 0) - return 1; - // Here we go remote to answer the question. CORBA::Boolean _tao_retval = 0; |