소스 검색

Hack around GitHub issue #165 (?)

Adam Ierymenko 10 년 전
부모
커밋
da254d967f
1개의 변경된 파일8개의 추가작업 그리고 1개의 파일을 삭제
  1. 8 1
      node/NetworkConfig.cpp

+ 8 - 1
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;
 }