summaryrefslogtreecommitdiff
path: root/cpp/src/IceGrid/ServerAdapterI.cpp
diff options
context:
space:
mode:
authorMichi Henning <michi@zeroc.com>2008-10-17 17:04:16 +1000
committerMichi Henning <michi@zeroc.com>2008-10-17 17:04:16 +1000
commit4259685e44589a6efbb45f43f054b406dc8cf89c (patch)
treed3e26a8201d782e4cd4f617c090cafe9e609d943 /cpp/src/IceGrid/ServerAdapterI.cpp
parentChanged swish-e perl scripts to tolerate -IceTouch suffix and to avoid (diff)
parentSquashed commit of the following: (diff)
downloadice-4259685e44589a6efbb45f43f054b406dc8cf89c.tar.bz2
ice-4259685e44589a6efbb45f43f054b406dc8cf89c.tar.xz
ice-4259685e44589a6efbb45f43f054b406dc8cf89c.zip
Merge branch 'R3_3_branch'
Diffstat (limited to 'cpp/src/IceGrid/ServerAdapterI.cpp')
-rw-r--r--cpp/src/IceGrid/ServerAdapterI.cpp15
1 files changed, 14 insertions, 1 deletions
diff --git a/cpp/src/IceGrid/ServerAdapterI.cpp b/cpp/src/IceGrid/ServerAdapterI.cpp
index ba904bdf199..08ae0d9a441 100644
--- a/cpp/src/IceGrid/ServerAdapterI.cpp
+++ b/cpp/src/IceGrid/ServerAdapterI.cpp
@@ -96,6 +96,12 @@ ServerAdapterI::activate_async(const AMD_Adapter_activatePtr& cb, const Ice::Cur
destroy();
activationFailed("server destroyed");
}
+ catch(const Ice::Exception& ex)
+ {
+ ostringstream os;
+ os << "unexpected exception: " << ex;
+ activationFailed(os.str());
+ }
}
Ice::ObjectPrx
@@ -188,7 +194,14 @@ ServerAdapterI::setDirectProxy(const Ice::ObjectPrx& prx, const Ice::Current&)
void
ServerAdapterI::destroy()
{
- _node->getAdapter()->remove(_this->ice_getIdentity());
+ try
+ {
+ _node->getAdapter()->remove(_this->ice_getIdentity());
+ }
+ catch(const Ice::LocalException&)
+ {
+ // Ignore.
+ }
}
void