diff options
Diffstat (limited to 'cpp/src/Ice/LocatorInfo.cpp')
-rw-r--r-- | cpp/src/Ice/LocatorInfo.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/cpp/src/Ice/LocatorInfo.cpp b/cpp/src/Ice/LocatorInfo.cpp index e668dc3a248..85b4cd2b03b 100644 --- a/cpp/src/Ice/LocatorInfo.cpp +++ b/cpp/src/Ice/LocatorInfo.cpp @@ -549,9 +549,11 @@ IceInternal::LocatorInfo::getLocatorRegistry() IceUtil::Mutex::Lock sync(*this); // - // The locator registry can't be located. + // The locator registry can't be located. We use ordered + // endpoint selection in case the locator returned a proxy + // with some endpoints which are prefered to be tried first. // - _locatorRegistry = LocatorRegistryPrx::uncheckedCast(locatorRegistry->ice_locator(0)); + _locatorRegistry = locatorRegistry->ice_locator(0)->ice_endpointSelection(Ice::Ordered); return _locatorRegistry; } } |