summaryrefslogtreecommitdiff
path: root/cpp
diff options
context:
space:
mode:
authorMarc Laukien <marc@zeroc.com>2003-12-17 15:34:04 +0000
committerMarc Laukien <marc@zeroc.com>2003-12-17 15:34:04 +0000
commitb0d792ee7322f430ee11a4c41868c09b646594f5 (patch)
tree2933115263d5bdedbe88f8e8bec0538b8e0e9027 /cpp
parentremoving Unicode usage (diff)
downloadice-b0d792ee7322f430ee11a4c41868c09b646594f5.tar.bz2
ice-b0d792ee7322f430ee11a4c41868c09b646594f5.tar.xz
ice-b0d792ee7322f430ee11a4c41868c09b646594f5.zip
stable_partition
Diffstat (limited to 'cpp')
-rw-r--r--cpp/CHANGES6
-rw-r--r--cpp/src/Ice/Proxy.cpp7
2 files changed, 10 insertions, 3 deletions
diff --git a/cpp/CHANGES b/cpp/CHANGES
index e9c8945754f..893d8efd890 100644
--- a/cpp/CHANGES
+++ b/cpp/CHANGES
@@ -1,10 +1,12 @@
Changes since version 1.2.0
---------------------------
+- Fixed a problem with the random selection of SSL endpoints.
+
- Ice is now supported on Windows 98 SE. See INSTALL.WINDOWS.
-- Fixed an incorrect complaint in the Slice parser about a change
- of meaning for enumeration constant definitions.
+- Fixed an incorrect complaint in the Slice parser about a change of
+ meaning for enumeration constant definitions.
- The glacierrouter and glacierstarter processes used to abort if
given a non-existent config file.
diff --git a/cpp/src/Ice/Proxy.cpp b/cpp/src/Ice/Proxy.cpp
index 59b913bb774..32125a10628 100644
--- a/cpp/src/Ice/Proxy.cpp
+++ b/cpp/src/Ice/Proxy.cpp
@@ -1215,7 +1215,12 @@ IceDelegateM::Ice::Object::filterEndpoints(const vector<EndpointPtr>& allEndpoin
}
else
{
- partition(endpoints.begin(), endpoints.end(), not1(::Ice::constMemFun(&Endpoint::secure)));
+ //
+ // We must use stable_partition() instead of just simply
+ // partition(), because otherwise some STL implementations
+ // order our now randomized endpoints.
+ //
+ stable_partition(endpoints.begin(), endpoints.end(), not1(::Ice::constMemFun(&Endpoint::secure)));
}
return endpoints;