Be careful not to unload current project if settings imported from it.

Fixes https://gitlab.com/kicad/code/kicad/issues/5684
This commit is contained in:
Jeff Young 2020-09-17 20:53:56 +01:00
parent 471f81742f
commit e202dba386
1 changed files with 6 additions and 3 deletions

View File

@ -185,7 +185,8 @@ void DIALOG_BOARD_SETUP::OnAuxiliaryAction( wxCommandEvent& event )
DisplayErrorMessage( this, msg, ioe.What() );
}
m_frame->GetSettingsManager()->UnloadProject( otherPrj, false );
if( otherPrj != &m_frame->Prj() )
m_frame->GetSettingsManager()->UnloadProject( otherPrj, false );
return;
}
@ -228,11 +229,13 @@ void DIALOG_BOARD_SETUP::OnAuxiliaryAction( wxCommandEvent& event )
if( importDlg.m_SeveritiesOpt->GetValue() )
m_severities->ImportSettingsFrom( otherBoard->GetDesignSettings().m_DRCSeverities );
otherBoard->ClearProject();
if( otherPrj != &m_frame->Prj() )
otherBoard->ClearProject();
}
// Clean up and free memory before leaving
m_frame->GetSettingsManager()->UnloadProject( otherPrj, false );
if( otherPrj != &m_frame->Prj() )
m_frame->GetSettingsManager()->UnloadProject( otherPrj, false );
delete otherBoard;
}