summaryrefslogtreecommitdiff
path: root/TAO/tao/IORInterceptor/IORInterceptor_Adapter_Impl.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/tao/IORInterceptor/IORInterceptor_Adapter_Impl.cpp')
-rw-r--r--TAO/tao/IORInterceptor/IORInterceptor_Adapter_Impl.cpp14
1 files changed, 10 insertions, 4 deletions
diff --git a/TAO/tao/IORInterceptor/IORInterceptor_Adapter_Impl.cpp b/TAO/tao/IORInterceptor/IORInterceptor_Adapter_Impl.cpp
index 4a0ebe96dbb..d506cc0ba95 100644
--- a/TAO/tao/IORInterceptor/IORInterceptor_Adapter_Impl.cpp
+++ b/TAO/tao/IORInterceptor/IORInterceptor_Adapter_Impl.cpp
@@ -4,6 +4,7 @@
#include "IORInfo.h"
#include "tao/debug.h"
#include "tao/ORB_Constants.h"
+#include "tao/PI/PI.h"
#include "tao/PortableServer/Root_POA.h"
#include "tao/PortableServer/Non_Servant_Upcall.h"
@@ -21,11 +22,16 @@ TAO_IORInterceptor_Adapter_Impl::add_interceptor (
PortableInterceptor::IORInterceptor_ptr i
ACE_ENV_ARG_DECL
)
- ACE_THROW_SPEC ((CORBA::SystemException))
{
- this->ior_interceptor_list_.add_interceptor (i
- ACE_ENV_ARG_PARAMETER);
- ACE_CHECK;
+ int retval =
+ this->ior_interceptor_list_.add_interceptor (i
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK;
+
+ if (retval == -1)
+ {
+ ACE_THROW (PortableInterceptor::ORBInitInfo::DuplicateName ());
+ }
}
void