diff options
Diffstat (limited to 'TAO/tests/Bug_2188_Regression/server.cpp')
-rw-r--r-- | TAO/tests/Bug_2188_Regression/server.cpp | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/TAO/tests/Bug_2188_Regression/server.cpp b/TAO/tests/Bug_2188_Regression/server.cpp index 542278071fe..4eba57f9c90 100644 --- a/TAO/tests/Bug_2188_Regression/server.cpp +++ b/TAO/tests/Bug_2188_Regression/server.cpp @@ -42,7 +42,7 @@ main (int argc, char *argv[]) try { CORBA::ORB_var orb = - CORBA::ORB_init (argc, argv, ""); + CORBA::ORB_init (argc, argv); CORBA::Object_var poa_object = orb->resolve_initial_references("RootPOA"); @@ -66,8 +66,13 @@ main (int argc, char *argv[]) PortableServer::ServantBase_var owner_transfer(target_servant); + PortableServer::ObjectId_var id = + root_poa->activate_object (target_servant); + + CORBA::Object_var object = root_poa->id_to_reference (id.in ()); + ArrayTest_var atobj = - target_servant->_this (); + ArrayTest::_narrow (object.in ()); ServerAdmin_i *servant; ACE_NEW_RETURN (servant, ServerAdmin_i(atobj.in()),1); @@ -75,8 +80,9 @@ main (int argc, char *argv[]) // safely releases previous reference and takes ownership of this one. owner_transfer = servant; - ServerAdmin_var saobj = - servant->_this (); + id = root_poa->activate_object (servant); + object = root_poa->id_to_reference (id.in ()); + ServerAdmin_var saobj = ServerAdmin::_narrow (object.in ()); CORBA::String_var ior = orb->object_to_string (saobj.in ()); |