diff options
Diffstat (limited to 'cpp/src/qpid/cluster/InitialStatusMap.cpp')
-rw-r--r-- | cpp/src/qpid/cluster/InitialStatusMap.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/cpp/src/qpid/cluster/InitialStatusMap.cpp b/cpp/src/qpid/cluster/InitialStatusMap.cpp index 6d27b3ae72..f2251f4043 100644 --- a/cpp/src/qpid/cluster/InitialStatusMap.cpp +++ b/cpp/src/qpid/cluster/InitialStatusMap.cpp @@ -28,8 +28,8 @@ using namespace boost; namespace qpid { namespace cluster { -InitialStatusMap::InitialStatusMap(const MemberId& self_) - : self(self_), completed(), resendNeeded() +InitialStatusMap::InitialStatusMap(const MemberId& self_, size_t size_) + : self(self_), completed(), resendNeeded(), size(size_) {} void InitialStatusMap::configChange(const MemberSet& members) { @@ -83,7 +83,8 @@ bool InitialStatusMap::isActive(const Map::value_type& v) { } bool InitialStatusMap::isComplete() { - return !map.empty() && find_if(map.begin(), map.end(), ¬Initialized) == map.end(); + return !map.empty() && find_if(map.begin(), map.end(), ¬Initialized) == map.end() + && (map.size() >= size); } bool InitialStatusMap::transitionToComplete() { |