summaryrefslogtreecommitdiff
path: root/cpp/src/Ice/ObjectAdapterI.cpp
diff options
context:
space:
mode:
authorDwayne Boone <dwayne@zeroc.com>2007-06-14 14:39:18 -0230
committerDwayne Boone <dwayne@zeroc.com>2007-06-14 14:39:18 -0230
commit6ef19b0d6367bd784828be3054b763fbcd8c420c (patch)
tree2f8f0d950d8378ed6238da334886b1a3266f2c08 /cpp/src/Ice/ObjectAdapterI.cpp
parentAdded .gitignore for MFC demos (diff)
downloadice-6ef19b0d6367bd784828be3054b763fbcd8c420c.tar.bz2
ice-6ef19b0d6367bd784828be3054b763fbcd8c420c.tar.xz
ice-6ef19b0d6367bd784828be3054b763fbcd8c420c.zip
Do not recreate ProcessI on refreshPublishedEndpoints
Diffstat (limited to 'cpp/src/Ice/ObjectAdapterI.cpp')
-rw-r--r--cpp/src/Ice/ObjectAdapterI.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/cpp/src/Ice/ObjectAdapterI.cpp b/cpp/src/Ice/ObjectAdapterI.cpp
index 0a7ac99d39a..b02cf0a9ef5 100644
--- a/cpp/src/Ice/ObjectAdapterI.cpp
+++ b/cpp/src/Ice/ObjectAdapterI.cpp
@@ -1237,9 +1237,12 @@ ObjectAdapterI::updateLocatorRegistry(const IceInternal::LocatorInfoPtr& locator
{
try
{
- ProcessPtr servant = new ProcessI(_communicator);
- Ice::ObjectPrx process = createDirectProxy(addWithUUID(servant)->ice_getIdentity());
- locatorRegistry->setServerProcessProxy(serverId, ProcessPrx::uncheckedCast(process));
+ if(_processId.name == "")
+ {
+ ProcessPtr servant = new ProcessI(_communicator);
+ _processId = addWithUUID(servant)->ice_getIdentity();
+ }
+ locatorRegistry->setServerProcessProxy(serverId, ProcessPrx::uncheckedCast(createDirectProxy(_processId)));
}
catch(const ServerNotFoundException&)
{