summaryrefslogtreecommitdiff
path: root/src/particlecontainer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/particlecontainer.cpp')
-rw-r--r--src/particlecontainer.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/particlecontainer.cpp b/src/particlecontainer.cpp
index 175c1e87..6900539d 100644
--- a/src/particlecontainer.cpp
+++ b/src/particlecontainer.cpp
@@ -71,14 +71,17 @@ void ParticleList::addLocally(Particle *particle)
void ParticleList::removeLocally(Particle *particle)
{
- for (std::list<Particle *>::iterator it = mElements.begin();
- it != mElements.end(); it++)
+ std::list<Particle *>::iterator it, it_end;
+ for (it = mElements.begin(), it_end = mElements.end();
+ it != it_end;)
{
if (*it == particle)
{
(*it)->kill();
- mElements.erase(it);
+ it = mElements.erase(it);
}
+ else
+ it++;
}
}