summaryrefslogtreecommitdiff
path: root/node
diff options
context:
space:
mode:
authorAdam Ierymenko <adam.ierymenko@gmail.com>2015-05-04 16:47:18 -0700
committerAdam Ierymenko <adam.ierymenko@gmail.com>2015-05-04 16:47:18 -0700
commitaf66f14761c086e1ca4c2255619f80b918d3f713 (patch)
treea79151066cebe01f44e951b9819ef5d4e37fe309 /node
parent7054c365f291a95bc8d37f6943fe786f0642790f (diff)
parentda254d967f730f94149cddca32e281b1752f6852 (diff)
downloadinfinitytier-af66f14761c086e1ca4c2255619f80b918d3f713.tar.gz
infinitytier-af66f14761c086e1ca4c2255619f80b918d3f713.zip
Merge branch 'adamierymenko-dev' into android-jni
Diffstat (limited to 'node')
-rw-r--r--node/NetworkConfig.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/node/NetworkConfig.cpp b/node/NetworkConfig.cpp
index 491c9493..82e986e2 100644
--- a/node/NetworkConfig.cpp
+++ b/node/NetworkConfig.cpp
@@ -210,7 +210,14 @@ bool NetworkConfig::operator==(const NetworkConfig &nc) const
if (_description != nc._description) return false;
if (_staticIps != nc._staticIps) return false;
if (_activeBridges != nc._activeBridges) return false;
- if (_multicastRates != nc._multicastRates) return false;
+ if (_multicastRates.size() == nc._multicastRates.size()) {
+ // uclibc++ doesn't seem to implement map<> != map<> correctly, so do
+ // it ourselves. Note that this depends on the maps being sorted.
+ for(std::map<MulticastGroup,MulticastRate>::const_iterator a(_multicastRates.begin()),b(nc._multicastRates.begin());a!=_multicastRates.end();++a,++b) {
+ if ((a->first != b->first)||(a->second != b->second))
+ return false;
+ }
+ } else return false;
if (_com != nc._com) return false;
return true;
}