diff --git a/toolkit/tmap.tcc b/toolkit/tmap.tcc index b9787a0f..afb7db4c 100644 --- a/toolkit/tmap.tcc +++ b/toolkit/tmap.tcc @@ -106,6 +106,7 @@ bool Map::isEmpty() const template typename Map::Iterator Map::find(const Key &key) { + detach(); return d->map.find(key); } @@ -124,6 +125,7 @@ bool Map::contains(const Key &key) const template Map &Map::erase(Iterator it) { + detach(); d->map.erase(it); return *this; } @@ -143,7 +145,8 @@ const T &Map::operator[](const Key &key) const template T &Map::operator[](const Key &key) { - return d->map[key]; + detach(); + return d->map[key]; } template