summaryrefslogtreecommitdiff
path: root/TAO/tao/DynamicAny/DynCommon.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/tao/DynamicAny/DynCommon.cpp')
-rw-r--r--TAO/tao/DynamicAny/DynCommon.cpp30
1 files changed, 3 insertions, 27 deletions
diff --git a/TAO/tao/DynamicAny/DynCommon.cpp b/TAO/tao/DynamicAny/DynCommon.cpp
index 02afe1a082e..0dab1fd2b13 100644
--- a/TAO/tao/DynamicAny/DynCommon.cpp
+++ b/TAO/tao/DynamicAny/DynCommon.cpp
@@ -440,41 +440,16 @@ TAO_DynCommon::insert_reference (CORBA::Object_ptr value,
}
else
{
- CORBA::Boolean good_type = 1;
CORBA::TCKind kind = TAO_DynAnyFactory::unalias (this->type_.in (),
ACE_TRY_ENV);
ACE_CHECK;
if (kind != CORBA::tk_objref)
{
- good_type = 0;
- }
- else
- {
- const char *value_id = value->_interface_repository_id ();
-
- if (ACE_OS::strcmp (value_id, "IDL:omg.org/CORBA/Object:1.0") != 0)
- {
- const char *my_id = this->type_->id (ACE_TRY_ENV);
- ACE_CHECK;
-
- if (ACE_OS::strcmp (value_id, my_id) != 0)
- {
- good_type = value->_is_a (my_id,
- ACE_TRY_ENV);
- ACE_CHECK;
- }
- }
- }
-
- if (good_type)
- {
- this->any_ <<= value;
- }
- else
- {
ACE_THROW (DynamicAny::DynAny::TypeMismatch ());
}
+
+ this->any_ <<= value;
}
}
@@ -1677,6 +1652,7 @@ TAO_DynCommon::set_flag (DynamicAny::DynAny_ptr component,
case CORBA::tk_value:
case CORBA::tk_value_box:
ACE_THROW (CORBA::NO_IMPLEMENT ());
+ break;
default:
{
TAO_DynAny_i *tmp = TAO_DynAny_i::_narrow (component,