Don't modify RTree while iterating over it

Fixes https://gitlab.com/kicad/code/kicad/-/issues/6582
This commit is contained in:
Jon Evans 2020-12-02 12:32:59 -05:00
parent 675bb90128
commit b7564f6f05
1 changed files with 5 additions and 4 deletions

View File

@ -387,12 +387,13 @@ bool DIALOG_CHANGE_SYMBOLS::processMatchingSymbols()
wxCHECK2( screen, continue );
std::vector<SCH_COMPONENT*> components;
for( SCH_ITEM* item : screen->Items().OfType( SCH_COMPONENT_T ) )
components.push_back( static_cast<SCH_COMPONENT*>( item ) );
for( SCH_COMPONENT* symbol : components )
{
SCH_COMPONENT* symbol = dynamic_cast<SCH_COMPONENT*>( item );
wxCHECK2( symbol, continue );
if( !isMatch( symbol, &instance ) )
continue;