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:
parent
b788b7c56c
commit
86a86f482f
@ -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;
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user