diff options
author | elliott_c <ocielliottc@users.noreply.github.com> | 2005-07-18 11:55:10 +0000 |
---|---|---|
committer | elliott_c <ocielliottc@users.noreply.github.com> | 2005-07-18 11:55:10 +0000 |
commit | f794aba3abe904711daf329810e389a05276d759 (patch) | |
tree | 6f4fb2a12c082bb4df3b125e54cd46aacf3d30df /TAO/tao/PortableServer | |
parent | 058a0cfdcc06435ee02d4b383cd68bcafe4797ae (diff) | |
download | ATCD-f794aba3abe904711daf329810e389a05276d759.tar.gz |
ChangeLogTag: Mon Jul 18 06:53:00 2005 Chad Elliott <elliott_c@ociweb.com>
Diffstat (limited to 'TAO/tao/PortableServer')
-rw-r--r-- | TAO/tao/PortableServer/RequestProcessingStrategyDefaultServant.cpp | 22 |
1 files changed, 3 insertions, 19 deletions
diff --git a/TAO/tao/PortableServer/RequestProcessingStrategyDefaultServant.cpp b/TAO/tao/PortableServer/RequestProcessingStrategyDefaultServant.cpp index 467f1e4ecd4..fa1c2d85b29 100644 --- a/TAO/tao/PortableServer/RequestProcessingStrategyDefaultServant.cpp +++ b/TAO/tao/PortableServer/RequestProcessingStrategyDefaultServant.cpp @@ -188,25 +188,7 @@ namespace TAO { PortableServer::Servant servant = this->default_servant_.in (); - if (servant) - { - // ATTENTION: Trick locking here, see class header for details - Non_Servant_Upcall non_servant_upcall (*this->poa_); - ACE_UNUSED_ARG (non_servant_upcall); - - // The POA invokes _add_ref once on the Servant before returning - // it. If the application uses reference counting, the caller of - // id_to_servant is responsible for invoking _remove_ref once on - // the returned Servant when it is finished with it. A - // conforming caller need not invoke _remove_ref on the returned - // Servant if the type of the Servant uses the default reference - // counting inherited from ServantBase. - servant->_add_ref (ACE_ENV_SINGLE_ARG_PARAMETER); - ACE_CHECK_RETURN (0); - - return servant; - } - else + if (servant == 0) { /* * If using default servant request processing strategy but @@ -216,6 +198,8 @@ namespace TAO ACE_THROW_RETURN (PortableServer::POA::ObjectNotActive (), 0); } + + return servant; } void |