diff --git a/node/Dictionary.cpp b/node/Dictionary.cpp index c3b9b3965..117dab2ab 100644 --- a/node/Dictionary.cpp +++ b/node/Dictionary.cpp @@ -31,7 +31,7 @@ std::vector &Dictionary::operator[](const char *k) const std::vector &Dictionary::operator[](const char *k) const { static const std::vector emptyEntry; - std::map< uint64_t,std::vector >::const_iterator e(_t.find(_toKey(k))); + Map< uint64_t,std::vector >::const_iterator e(_t.find(_toKey(k))); return (e == _t.end()) ? emptyEntry : e->second; } @@ -156,7 +156,7 @@ void Dictionary::encode(std::vector &out) const out.clear(); - for(std::map< uint64_t,std::vector >::const_iterator ti(_t.begin());ti!=_t.end();++ti) { + for(Map< uint64_t,std::vector >::const_iterator ti(_t.begin());ti!=_t.end();++ti) { str[0] = ti->first; const char *k = (const char *)str; for(;;) { diff --git a/node/Dictionary.hpp b/node/Dictionary.hpp index a26246b70..913028ec5 100644 --- a/node/Dictionary.hpp +++ b/node/Dictionary.hpp @@ -18,10 +18,10 @@ #include "Utils.hpp" #include "Address.hpp" #include "Buf.hpp" +#include "Map.hpp" #include #include -#include namespace ZeroTier { @@ -180,7 +180,7 @@ private: return key; } - std::map< uint64_t,std::vector > _t; + Map< uint64_t,std::vector > _t; }; } // namespace ZeroTier diff --git a/node/Map.hpp b/node/Map.hpp index 87925808c..cd6156f81 100644 --- a/node/Map.hpp +++ b/node/Map.hpp @@ -84,7 +84,7 @@ public: ZT_INLINE void set(const K &key,const V &value) { - this->emplace(key,value); + (*this)[key] = value; } }; #endif