diff --git a/dune/common/lru.hh b/dune/common/lru.hh index 20dd7bdf4ed1bf40fc08eff2a1cfa657eda41d2d..91ab8ed9406ed0f447c60da9d3b4cf5f60ed1948 100644 --- a/dune/common/lru.hh +++ b/dune/common/lru.hh @@ -182,15 +182,15 @@ namespace Dune { reference touch (const key_type & key) { /* query _index for iterator */ - iterator it = _index[key]; + map_iterator it = _index.find(key); if (it == _index.end()) DUNE_THROW(Dune::RangeError, "Failed to touch key " << key << ", it is not in the lru container"); /* update _data move it to the front */ - _data.splice(_data.begin(), _data, it); - return it->second; + _data.splice(_data.begin(), _data, it->second); + return it->second->second; } /**