diff options
author | elliott_c <ocielliottc@users.noreply.github.com> | 2002-03-05 18:54:03 +0000 |
---|---|---|
committer | elliott_c <ocielliottc@users.noreply.github.com> | 2002-03-05 18:54:03 +0000 |
commit | 0e755f988ae83b1e930ec5d96300676d898909e4 (patch) | |
tree | 713665cfb443e010b439f7169cee862b7187aaac | |
parent | 41b5362ac8d3201149f80c61fb639c079a7d4bea (diff) | |
download | ATCD-0e755f988ae83b1e930ec5d96300676d898909e4.tar.gz |
ChangeLogTag: Tue Mar 5 12:52:30 2002 Chad Elliott <elliott_c@ociweb.com>
-rw-r--r-- | TAO/ChangeLogs/ChangeLog-02a | 7 | ||||
-rw-r--r-- | TAO/orbsvcs/ImplRepo_Service/Forwarder.cpp | 10 | ||||
-rw-r--r-- | TAO/orbsvcs/ImplRepo_Service/ImplRepo_i.cpp | 8 |
3 files changed, 16 insertions, 9 deletions
diff --git a/TAO/ChangeLogs/ChangeLog-02a b/TAO/ChangeLogs/ChangeLog-02a index b7617883011..1e88271b5b1 100644 --- a/TAO/ChangeLogs/ChangeLog-02a +++ b/TAO/ChangeLogs/ChangeLog-02a @@ -1,3 +1,10 @@ +Tue Mar 5 12:52:30 2002 Chad Elliott <elliott_c@ociweb.com> + + * orbsvcs/ImplRepo_Service/Forwarder.cpp: + * orbsvcs/ImplRepo_Service/ImplRepo_i.cpp: + + Fix some memory leaks due to misuse of CORBA memory management. + Tue Mar 5 10:56:36 2002 Craig Rodrigues <crodrigu@bbn.com> * TAOACE.dsw: Make AV project depend on ACE_QoS project. diff --git a/TAO/orbsvcs/ImplRepo_Service/Forwarder.cpp b/TAO/orbsvcs/ImplRepo_Service/Forwarder.cpp index ad8be8e9524..20fac7693e0 100644 --- a/TAO/orbsvcs/ImplRepo_Service/Forwarder.cpp +++ b/TAO/orbsvcs/ImplRepo_Service/Forwarder.cpp @@ -71,13 +71,13 @@ ImR_Forwarder::preinvoke (const PortableServer::ObjectId &, CORBA::ORB_var orb = OPTIONS::instance ()->orb (); ACE_TString ior; - CORBA::Object_ptr forward_obj = CORBA::Object::_nil (); + CORBA::Object_var forward_obj; ACE_TRY { // Activate. - - ior = this->imr_impl_->activate_server_i (poa->the_name (), + CORBA::String_var poa_name = poa->the_name(); + ior = this->imr_impl_->activate_server_i (poa_name.in (), 1 ACE_ENV_ARG_PARAMETER); ACE_TRY_CHECK; @@ -118,8 +118,8 @@ ImR_Forwarder::preinvoke (const PortableServer::ObjectId &, ACE_ENDTRY; ACE_CHECK_RETURN (0); - if (!CORBA::is_nil (forward_obj)) - ACE_THROW_RETURN (PortableServer::ForwardRequest (forward_obj), 0); + if (!CORBA::is_nil (forward_obj.in ())) + ACE_THROW_RETURN (PortableServer::ForwardRequest (forward_obj.in ()), 0); else ACE_ERROR ((LM_ERROR, "Error: Forward_to reference is nil.\n")); diff --git a/TAO/orbsvcs/ImplRepo_Service/ImplRepo_i.cpp b/TAO/orbsvcs/ImplRepo_Service/ImplRepo_i.cpp index 9f21638073d..9746e58e42a 100644 --- a/TAO/orbsvcs/ImplRepo_Service/ImplRepo_i.cpp +++ b/TAO/orbsvcs/ImplRepo_Service/ImplRepo_i.cpp @@ -342,7 +342,7 @@ ImplRepo_i::start_server_i (const char *server this->process_mgr_.terminate (spawned_pid); ACE_THROW(ImplementationRepository::Administration::CannotActivate - (CORBA::string_dup ("Timeout"))); + ("Timeout")); ACE_CHECK; } } @@ -672,11 +672,11 @@ ImplRepo_i::server_is_running (const char *server, ACE_DEBUG ((LM_DEBUG, " at %s\n", location)); // Get the stringified server_object_ior - ACE_TCHAR *server_object_ior = orb->object_to_string (server_object - ACE_ENV_ARG_PARAMETER); + CORBA::String_var server_object_ior = orb->object_to_string (server_object + ACE_ENV_ARG_PARAMETER); ACE_CHECK_RETURN (0); - if (this->repository_.update (server, location, server_object_ior) == 0) + if (this->repository_.update (server, location, server_object_ior.in ()) == 0) { if (OPTIONS::instance()->debug () >= 1) ACE_DEBUG ((LM_DEBUG, |