diff options
author | rachytski <siarhei.rachytski@gmail.com> | 2012-05-25 23:38:57 +0400 |
---|---|---|
committer | Alex Zolotarev <alex@maps.me> | 2015-09-23 01:38:56 +0300 |
commit | 6e40c5c9d6e30393c51cbd80a501d1b4fc58eef6 (patch) | |
tree | 9d60b243a6e273eaf0f948eab0af3a7be22a90ff /geometry/tree4d.hpp | |
parent | d2c12d6eb3a1dd5ef4ed10ce893a5071be415eb3 (diff) |
fixed bug in m4::Tree::Erase
Diffstat (limited to 'geometry/tree4d.hpp')
-rw-r--r-- | geometry/tree4d.hpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/geometry/tree4d.hpp b/geometry/tree4d.hpp index 001094248b..2634664715 100644 --- a/geometry/tree4d.hpp +++ b/geometry/tree4d.hpp @@ -154,9 +154,13 @@ namespace m4 void Erase(T const & obj) { + vector<value_t> v; for (typename tree_t::const_iterator i = m_tree.begin(); i != m_tree.end(); ++i) if ((*i).m_val == obj) - m_tree.erase(*i); + v.push_back(*i); + + for (unsigned i = 0; i < v.size(); ++i) + m_tree.erase(v[i]); } template <class TCompare> |