diff options
Diffstat (limited to 'cpp/src/Ice/CommunicatorI.cpp')
-rw-r--r-- | cpp/src/Ice/CommunicatorI.cpp | 15 |
1 files changed, 2 insertions, 13 deletions
diff --git a/cpp/src/Ice/CommunicatorI.cpp b/cpp/src/Ice/CommunicatorI.cpp index 01fa8eac7a7..3fb9e387e67 100644 --- a/cpp/src/Ice/CommunicatorI.cpp +++ b/cpp/src/Ice/CommunicatorI.cpp @@ -134,24 +134,13 @@ Ice::CommunicatorI::proxyToString(const ObjectPrx& proxy) const ObjectAdapterPtr Ice::CommunicatorI::createObjectAdapter(const string& name) { - return _instance->objectAdapterFactory()->createObjectAdapter(name); + return createObjectAdapterWithEndpoints(name, getProperties()->getProperty(name + ".Endpoints")); } ObjectAdapterPtr Ice::CommunicatorI::createObjectAdapterWithEndpoints(const string& name, const string& endpoints) { - const string propertyKey = name + ".Endpoints"; - const string originalValue = getProperties()->getProperty(propertyKey); - try - { - getProperties()->setProperty(propertyKey, endpoints); - return createObjectAdapter(name); - } - catch(const AlreadyRegisteredException&) - { - getProperties()->setProperty(propertyKey, originalValue); - throw; - } + return _instance->objectAdapterFactory()->createObjectAdapter(name, endpoints); } void |