summaryrefslogtreecommitdiff
path: root/CIAO/ciao/Servants/Session/Servant_Impl_T.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'CIAO/ciao/Servants/Session/Servant_Impl_T.cpp')
-rw-r--r--CIAO/ciao/Servants/Session/Servant_Impl_T.cpp15
1 files changed, 6 insertions, 9 deletions
diff --git a/CIAO/ciao/Servants/Session/Servant_Impl_T.cpp b/CIAO/ciao/Servants/Session/Servant_Impl_T.cpp
index 32066508613..0c86feeb24b 100644
--- a/CIAO/ciao/Servants/Session/Servant_Impl_T.cpp
+++ b/CIAO/ciao/Servants/Session/Servant_Impl_T.cpp
@@ -46,7 +46,6 @@ namespace CIAO
typename CONTEXT>
Session_Servant_Impl<BASE_SKEL, EXEC, CONTEXT>::~Session_Servant_Impl (void)
{
- //TODO: thread safe? How?
if (this->executor_->_refcount_value () > 1)
{
CIAO_ERROR (1,
@@ -112,12 +111,12 @@ namespace CIAO
::Components::SessionContext_var sc =
::Components::SessionContext::_narrow (this->context_);
- if (! ::CORBA::is_nil (sc.in ()))
+ if (::CORBA::is_nil (sc.in ()))
{
- return sc->get_CCM_object ();
+ throw ::CORBA::INTERNAL ();
}
- throw ::CORBA::INTERNAL ();
+ return sc->get_CCM_object ();
}
// CIAO-specific operations.
@@ -188,14 +187,12 @@ namespace CIAO
::Components::SessionComponent_var temp =
::Components::SessionComponent::_narrow (this->executor_.in ());
- if (! ::CORBA::is_nil (temp.in ()))
- {
- temp->ccm_remove ();
- }
- else
+ if (::CORBA::is_nil (temp.in ()))
{
throw ::CORBA::INTERNAL ();
}
+
+ temp->ccm_remove ();
}
}