summaryrefslogtreecommitdiff
path: root/TAO/tao/IIOPC.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/tao/IIOPC.cpp')
-rw-r--r--TAO/tao/IIOPC.cpp17
1 files changed, 13 insertions, 4 deletions
diff --git a/TAO/tao/IIOPC.cpp b/TAO/tao/IIOPC.cpp
index 53c164dc8c1..e4884ba1fda 100644
--- a/TAO/tao/IIOPC.cpp
+++ b/TAO/tao/IIOPC.cpp
@@ -344,11 +344,15 @@ CORBA::Boolean operator>>= (const CORBA::Any &_tao_any, const IIOP::ListenPointL
ACE_TRY_NEW_ENV
{
CORBA::TypeCode_var type = _tao_any.type ();
- if (!type->equivalent (IIOP::_tc_ListenPointList, ACE_TRY_ENV)) // not equal
+ CORBA::Boolean result =
+ type->equivalent (IIOP::_tc_ListenPointList, ACE_TRY_ENV);
+ ACE_TRY_CHECK;
+
+ if (!result)
{
return 0;
}
- ACE_TRY_CHECK;
+
if (_tao_any.any_owns_data ())
{
_tao_elem = ACE_static_cast(
@@ -425,11 +429,16 @@ CORBA::Boolean operator>>= (const CORBA::Any &_tao_any, const IIOP::BiDirIIOPSer
ACE_TRY_NEW_ENV
{
CORBA::TypeCode_var type = _tao_any.type ();
- if (!type->equivalent (IIOP::_tc_BiDirIIOPServiceContext, ACE_TRY_ENV)) // not equal
+ CORBA::Boolean result =
+ type->equivalent (IIOP::_tc_BiDirIIOPServiceContext,
+ ACE_TRY_ENV);
+ ACE_TRY_CHECK;
+
+ if (!result)
{
return 0;
}
- ACE_TRY_CHECK;
+
if (_tao_any.any_owns_data ())
{
_tao_elem = ACE_static_cast(