13
0

Fix use of invalidated iterator (#4822).

git-svn-id: svn://localhost/ardour2/branches/3.0@11893 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
Carl Hetherington 2012-04-11 10:43:27 +00:00
parent b788b7c56c
commit 86a86f482f

View File

@ -620,10 +620,17 @@ RegionFactory::remove_regions_using_source (boost::shared_ptr<Source> src)
{
Glib::Mutex::Lock lm (region_map_lock);
for (RegionMap::iterator i = region_map.begin(); i != region_map.end(); ++i) {
RegionMap::iterator i = region_map.begin();
while (i != region_map.end()) {
RegionMap::iterator j = i;
++j;
if (i->second->uses_source (src)) {
region_map.erase (i);
}
i = j;
}
}